Страница 14 из 32
Inkscape Gcodetools plug-in English support forum
Добавлено: 10 дек 2009, 10:28
Nick

- Generated Gcode in EMC2
| Type | Extension of vector
graphics editor Inkscape |
| Developer | Gcodetools develop team |
| Written in | Python |
| OS | Cross-Platform (Windows, Linux, MacOS) |
| Version | 1.6.03 |
| License | GNU GPL |
| Downloads | 7800+ |
Gcodetools
Gcodetools is a plug-in for Inkscape. It prepares and converts paths from Inkscape to Gcode, using biarc interpolation.
This article is unfinished. You can help cnc-club expanding it.
Screenshots and photos are needed. Please post them at this thread.
Features (для просмотра содержимого нажмите на ссылку)Features

- Preview of the generated Gcode in EMC

- Gcodetools area pocketing

- Gcodetools lathe

- Gcodetools engraving by Rene

- Bears by Durachko
Export to Gcode- Export paths to Gcode
- Using circular (biarc approximation) or straight line interpolation
- Automatic path subdivision to reach defined tolerance
- Multiply tool processing
- Export Gcode in parametric of flat form
- Including personal headers and footers
- Choosing units
- Multi-pass processing
- Numeric suffix is added to generated files to avoid overwriting
Lathe Gcode- Compute trajectories for lathe
- Fine cut
- Define fine cut's depth
- Define fine rounds
- Two different computation functions for fine cut
- Standard axis remapping
Path's area processing- Building area paths
- Area paths could be modified
Engraving- Building trajectory according to the cutter's shape
- Defining different cutter's shapes
Tool's library- Defining different tool's parameters (diameter, feed, depth step, penetration feed, personal Gcode before/after each path, cutters shape, personal tool's changing Gcode)
- Tools can be managed by Inkscape's standard procedures (copy, delete, assigned to different layer)
- Multiply tools processing
Orientation system- Applying scale along any axis
- Apply rotate in the ХY plane
- Apply translation along any axis
- Apply transforms according to arbitrary points
Post-processor- You can create custom post-processor by writing down the commands or choose from the list of default post-processors
- Scale and offset Gcode
- Gcode commands remapping
- Parameterize Gcode
- Round floating point values to specified precision
Verifying tools for the scene- Select and remove small paths (area artefacts)
- Tool's alignment check
- Cutting order check
Plotter cutting- Export to Gcode for plotter with tangential knife. Forth axis A is knife's rotation.
Install (для просмотра содержимого нажмите на ссылку)Install
Windows
Unpack and copy all the files to the following directory Program Files\Inkscape\share\extensions\ and restart inkscape
Linux
Unpack and copy all the files to the following directory /usr/share/inkscape/extensions/ and restart inkscape
Get latest version (для просмотра содержимого нажмите на ссылку)Get latest versions
Latest stable version
Gcodetools 1.7
Older versions(ver 1.5)
(ver 1.5)
(ver 1.4)
(ver 1.2)
Dev-version
You can try the newest development version by getting it from github repository
https://github.com/cnc-club/gcodetools via web interface or using
git clone git@github.com:cnc-club/gcodetools.git .
You'll need to run
python create_inx.py to create inx files. After that install procedure is the same with the stable version.
Translations
Gcodetools is included into Inkscape v 0.49 so it will have native translations as other Inkscape's extensions. Until it is released you can use some self made translation packs:
Develop (для просмотра содержимого нажмите на ссылку)Develop
At the moment following features are being developed:
- Plasma cutter extension
- Turning lathe extension
- Plotter extension
You can help us improve Gcodetools in several ways
- Writing a report / bug report
- Improve help and manuals
- Publish G-codes / SVGs / other code
- Publish photos / videos
- Make a bug report
- Help develop new features
- Suggest a new feature
Tested on (для просмотра содержимого нажмите на ссылку)Tested on
Linux
Ubuntu 9.10 14.04 + inkscape 0.48 (older Gcodetools versions also work with 0.46, 0.47)
Windows
Windows XP, Windows Vista, Windows 7 + inkscape 0.46, inkscape 0.47
MacOS
There are some reports on successful work on MacOs.
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 24 май 2011, 21:36
Nick
Hi ChrisInNewbury!
Wow what you've done is awesome!!! Hope I can test it soon!
Maximum engraving distance was needed for one special case. Engraving function was developed to solve that case. So lets assume that we have large path with wide internal part an some sharp angles. So we can not engrave the whole path with the cone bit, because it's to wide and can not engrave the corners with cylindrical bit (because just can not). So we do all internal with the cylinder and then engrave the sharp angles. So we do not need to cut through whole path but can cut only the angles. That's where maximum distance can be used. And some times you might want to do overrun to get smother connection with the corner.
Now I get you about the Zspeed. It appears that you are right

.
You'll have to get an account on Launchpad. You can register there via OpenId from Gmail or others. After that join Gcodetools dev team
https://launchpad.net/~gcodetools.team or send me your account info and I'll add you to the team. After that you'll be able to post the code to the gcodetools trunk using bazaar. (If you'll got problems with bazaar, write me down and I'll try to help.)
Thanks man it's awesome

!
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 25 май 2011, 02:44
ChrisInNewbury
Hi Nick,
I've joined Launchpad, installed bzr-2.3.1 and requested to join the Gcodetools team. I've read some of the Launchpad and Bazaar documentation. Not sure I fully understand it, but I've been a professional software developer and know how version control systems work (or used to work!).
By the way, when working on engraving, I found a problem in applying bezierslopeatt, csp_normalized_slope and csp_normalized_normal to the paths of font characters. These seem to be generated with 5 decimal places of accuracy, plus or minus one. If these coordinates are used to find the slope of a straight segment at t=0, the possibility that the control point is 0.00001 pixels from the end of the line causes the slope at t=0 to be returned as, for instance, (1,0). This is because straight lines are stored with control points at their end points, so bezier.bezierparameterize returns cx and cy very close to zero. I find that it is best to ignore cx,cy if they are that small, so I suggest using L'Hopital's rule if cx and cy are both less than, say, 0.0001. (The current code uses length< 1e-20 which is far too small, in my experience).
Anyway, once I'm in the team on Launchpad, I guess I can register that kind of issue and fix it.
Best wishes
Chris
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 25 май 2011, 06:05
Nick
I've added you to the team. So welcome

!
I've used Hopitals rule only if x'
t(t)=0 and y'
t(t)=0. This can cause some "bugs" in the almost straight segments. As in the case above. But sometimes it's needed to make curve and it's slope continuous... Probable we should add some tolerance parameter.
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 25 май 2011, 14:43
ChrisInNewbury
Hi Nick,
I'm struggling to understand the whole Bazaar thing. I just ran up Bzr and tried to import, using "Get project source from elsewhere", Branch from lp://qastaging/gcodetools but got an error "unsupported protocol"
I don't find the online doc for Launchpad and Bazaar very helpful.
I'm using Windows Vista.
So you can see my work straight away, I've attached my py file. It has comments with #LT to identify them.
Can you help, please?
Chris
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 25 май 2011, 19:49
Nick
what is "qastaging"?
correct string: bzr branch lp:gcodetools .
to get new code use bzr pull lp:gcodetools
to post new code bzr push lp:gcodetools
You can try one of several GUIs for bazaar
http://wiki.bazaar.canonical.com/3rdPartyTools
I'll be out to Moscow for Metalworking exhibition. Probably wont be able to post out. Will be back at Friday.
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 26 май 2011, 20:36
ChrisInNewbury
Revision 205 in Launchpad has my engraving() code.
Will anyone interested please test it and let me know what you think. Also, let me know if you want the displayed toolpath circles to reflect the optimum path (out to max-engraving-dist from the path) as it currently does or the actual toolpath (out to tool diameter/2) of the generated gcode (as I think it should).
Thanks
Chris
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 27 май 2011, 15:09
Nick
Hi,
I thought about displaying and probably modifying engraving path. In inkscape there are variable width paths. So we can try to use them do display engraving outline, and use them afterwards to export to Gcode. This should be easy, because variable width paths are determined by middle path and width along the path. So exporting this path to gcode should be easy.
I have not checked your version yet, but will do it ASAP.
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 27 май 2011, 23:48
ChrisInNewbury
Hi Nick,
Yes, I've been thinking of making it more interactive by having a two-pass function:
Pass 1: Gcodetools calculates what it thinks is the best engraving path, displaying it with some indication of Z axis values
User can now edit the path to improve its aesthetics, remove artifacts, whatever,
Pass2: Gcodetools takes the edited path and emits gcode.
But I don't think you can use line stroke width, as you need to be able to vary width along a line. Could we use circles, each with an id that represents the order of toolpath traversal? They'd be fairly easy to edit, both to move them and to change radius. Much of the path may be traversed in both directions, so clone circles could be used. Worth thinking about.
But first, I'm working on improving the accuracy of toolpath generated without using more points by using more sophisticated logic.
Chris
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 28 май 2011, 20:14
Nick
There are variable stroke width objects in Inkscape. We can use it. They are much like that you can get using path along path extension.
In fact, they are actually paths along paths.
Try change the From when using Bezier tool. But circles could be fine too.
One more thing, I do not think that editing will be possible or useful. When you have 1000 circles It's hard to change anything without loosing the smoothness

.
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 31 май 2011, 04:11
ChrisInNewbury
Hi Nick,
I'm struggling with Bzr under Windows. I want to push another version of gcodetools, with more improvements to engraving and a bug fix in a minor routine, but bzr won't let me. It says "Unable to open location. Unable to authenticate to SSH host as
clusbytaylor@bazaar.launchpad.net supported auth types: ['publickey']
In the All tab I have given a launchpad login command, apparently successfully.
But I was able to authenticate a few days ago when I downloaded gcodetools and uploaded my version 205. So I don't see what's changed. In my browser, I am logged into Launchpad and can see my public key. Any thoughts?
The Pageant icon in my system bar at the bottom of the screen has disappeared. Is that significant, do you know?
By the way, what I want to upload is further significant speedups, better code generation and more robustness in cases where, I think, the previous code could cause errors.
Thanks
Chris
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 31 май 2011, 04:49
ChrisInNewbury
Hi Again Nick
I think I've managed to upload both my versions of engraving - 205 and 206. The newer one is definitely better, in my tests.
I thought I'd uploaded 205 some days ago, but it seems I'd misunderstood bzr and had, in fact, committed my changes to my own local branch. Is there any documentation on bzr anywhere? The Web site is useless as far as I can see. I can't believe millions of people use it without asking the same questions as me.
Just now, the issue seems to have been that Pageant needs to be running when you try to authenticate. I had downloaded it and installed it a few days ago. It was running during that session but not after I shut the machine down. Also, it didn't install any shortcuts in the Windows Start menu or desktop so was hard to find. I don't think some of our industry likes to make life easy for Windows users.
Best wishes
Chris
Anyway, coming back to engraving: I'm getting quite confident that my code is working, but I haven't yet taken it to my Mach3 machine to do any actual engraving!
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 31 май 2011, 16:38
Nick
Bazaar itself is a terminal application. But there are several GUIs for it. I'm not so good with bazaar, I've developed gcodetools almost alone and have not used a lot of bzr features. Just pushing and pulling the code. Bzr has powerful functions for merging different branches of code. I think I'll got to meet them soon

.
I do use bzr only from console and it's easy for me. I just do
cd / my work dir
bzr commit
bzr push (it remembers last push address for the project )
or
cd / my work dir
bzr pull
and that's it.
ps here's what you can get in Linux if you run man bzr:
http://linux.die.net/man/1/bzr
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 10 июн 2011, 23:23
ChrisInNewbury
Hi All,
I just uploaded my latest GCodetools code to Launchpad, with many changes to the engraving function. It is registered as version 207. May I encourage anyone interested in engraving to try it.
Notable changes since my ver 206 are:
- displays a 3D stereo pair of images of the engraving in a layer called 3D. If you let your eyes diverge you should be able to see the 3D depth, as in "magic eye" pictures. (See my recent posing in the topic "Gcode import" for a sample picture)
- Dimensions are now interpreted as inches or mm, not pixels. This affects tool diameter and Z values. Ever seen a 35.4 pixel milling cutter? Nor have I.
- As a consequence of that, the actual Z values generated are correct (previously they needed scaling).
- Several English spelling corrections, while maintaining compatibility with existing tools in svg files.
Notable changes (in case you missed them) between my version 206 and the released 1.6.04:
- It assumes you are trying to engrave in imitation of a traditional letter cutter. So, for instance, internal corners are mitered, not rounded.
- It uses corner bisectors to control mitering and displays these, like the normals but in a different colour, and longer. The length depends on the angle.
- Much faster and more accurate - almost never cuts outside the path.
Known issues:
- The default path for output is set to C:\Users\Chris\Gcode which works for me

I don't know how to tell whether we're running on Windoze or Unix - can anyone help?
- The corner mitering can influence the engraving past where its influence should stop. Hard to give an example, but watch out for very long bisectors. (I hope to be able to fix this, but it may be tricky.)
Note, if you have never downloaded the development version of Gcodetools, my experience may help:
The instructions are on about page 2 of this forum. After installing Bazaar (bzr) and downloading Gcodetools from Launchpad with it, you must give the Python command to run create_inx.py. To do this on Windows, open a DOS Box (Accessories>Command Prompt), navigate to the extensions folder inside the Inkscape installation directory (perhaps >cd C:\Program Files\Inkscape\share\extensions ) and give the command:
>..\..\python\python create_inx.py
This should read the file gcodetools-dev.inx and create all the other inx files needed, all with -dev in their names.
If you get a Permission Denied error, you may need to log in as an administrator.
If all goes well, in Inkscape, this adds gcodetools-dev to the Extensions menu which has a submenu with 14 items, again all with -dev in their names. The original gcodetools (1.6.04) is still in the menu, so you can compare them.
Chris
-
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 13 июн 2011, 03:38
ChrisInNewbury
Ver 209 now uploaded.
It further improves the 3D effect in engraving, with fine-tuned parameters, especially for low values of the Accuracy Factor parameter, because the line width is now 50% of the gap between lines.
I have decided that there seems little reason to have graphics that show what the toolpath would be if only a larger tool were used, so I now limit the circles to the toolpath diameter, if it is smaller than the max_dist_to_engrave value.
I'm going on holiday now, so no more contact for a week.
Please let me know if you try my engrave module - does it do what you want? Are the graphics helpful?
Note that the 3D graphics are created in a layer called 3D. If you hide the other layers, you can then see the 3D image clearly.
Chris
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 05 июл 2011, 18:35
Nick
Hi Chris,
As I've wrote you about improving 3d view.
I think that 3d view can be more clear if we display it with quadrilaterals instead of lines. Probably semitransparent quadrilaterals.
It should give thickness to the view and to the 3d object.
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 09 окт 2011, 19:10
Dimitrios
Hi guys,
You did a great job with Gcodetools.
I have a big gantry router, which I intent to adapt a guided blade, and downloaded Gcodetoosl for a test spin. I made a simple design and simulated it in my EMC2 .
When it starts Axis puts a warning: "Parameter E without G76, M66, M67 or M68 to use it." but goes on. It stops in line 24 (the first G03) without apparent reason. The line is:
G03 X145.769784 Y187.312587 Z-0.125000 I11.765789 J16.680919 A-0.313984753713
To simulate the code I made a new virtual machine using the same parameter I use to work, only adding a A axis.
Both files, the inkscape design and the output are attached. I am using EMC2 2.4.6 in a Intel 510MB.
Best regards and thanks in advance.
Dimitrios
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 10 окт 2011, 23:24
Nick
Dimitrios писал(а):It stops in line 24 (the first G03) without apparent reason. The line is:G03 X145.769784 Y187.312587 Z-0.125000 I11.765789 J16.680919 A-0.313984753713
Hmmm... EMC2 stops machining and gives no error?
I'll got to check it...
Could you attach the directory with you config files (tar.gz)?
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 11 окт 2011, 21:33
Dimitrios
Nick,
As soon I get back to the shop I will copy the directory. I forgot to tell you that I am no Linux user, unhappily, but I am trying to learn fast. I already installed EMC2 and it is working like a charm, but did not adventure in HAL and Phyton.
Thank you again,
Regards
Dimitrios
Re: Inkscape Gcodetools plug-in English support forum
Добавлено: 15 окт 2011, 12:31
Nick
Before attachment compress it, just use RightMouseClick - Compress on the directory.
Dimitrios писал(а): I forgot to tell you that I am no Linux user, unhappily, but I am trying to learn fast. I already installed EMC2 and it is working like a charm, but did not adventure in HAL and Phyton.
That's ok. Anybody has started once. If you'll got questions, do not hesitate to ask

.
Engraving Questions
Добавлено: 18 ноя 2011, 21:10
EtchnSketch
I would like to engrave glass, and have two questions:
1. If 1px = 1mm, How do I make a 5.5mm cut?
2. Since I am just making very fine scratch lines, can I make a 0 width tool, and, more importantly, will it be centered in the 1px wide line? Perhaps I should just make a 1mm wide tool with a flat bottom and it will auto-center (but the ends will be off by 0.5mm)?
Thanks for the great work!