gcodeplot icon indicating copy to clipboard operation
gcodeplot copied to clipboard

Pen Width

Open kyberkiller opened this issue 8 years ago • 6 comments

Nice tool but what parameter is defining the width of the pen?

kyberkiller avatar Mar 02 '17 09:03 kyberkiller

None. Why do you need to define it?

arpruss avatar Mar 02 '17 13:03 arpruss

Hi,

Thanks for the fast answer.

Maybe I have got the idea totally wrong? I thought that the idea of lib is to produce g-code to draw the lines of svg?

And if you have a pen like 0.3 mm, a line for example 1.0 mm, surely it matters how many lines are drawn next to each other to produce the original line?

I'm actually trying to draw Kicad PCB SVG.

Thanks in Advance,

kyberkiller avatar Mar 02 '17 14:03 kyberkiller

Oh, that makes sense. Alas, gcodeplot doesn't support line thickness. It only draws a single line for each line in the svg. It's not a bad idea for the future, though, to add support for thickening lines. But to do that properly, I'd also have to do calculations regarding line-caps, and that would be annoying to do.

In the meanwhile, you can use long, narrow rectangles and shading, but that will result in way more pen movement, unless you're lucky enough that the rectangles align with the shading angle.

arpruss avatar Mar 02 '17 14:03 arpruss

Kyberkiller: this program works with, for example, a vinyl cutter, where your "line" is infinitely (or at least very) thin. So if you want to cut a line on the vinyl, you cut both edges of the line, so the thickness is given by the distance between them

For processing a hatching pattern for line thicknesses, a lot can be drawn from slicer programs like Slic3r and their infill algorithms. Drawing an outline first, like when 3D printing, would probably be useful; then draw an "infill" hatch with the selected pattern and density %. Pen flow would probably be a factor since slower moves result in thicker lines, perhaps this could be controlled?
If kyberkiller is drawing an SVG from a board design, I presume it's an automated way for using a marker as etch resist? If so, then a thick, even line is necessary so it effectively protects those areas of the copper.

laserguru avatar Jun 26 '17 19:06 laserguru

+1 for thickness feature. I'ts virtually impossible now to use ultra fine point marker for pcb.

tsipa avatar Feb 23 '19 06:02 tsipa

I think it's fair to say that making SVG strokes into solid objects (including end caps etc) is out of scope for this tool.

You might look at the "Path > Stroke to Path" option in Inkscape, which will convert a stroke into a filled object. Here's an example: https://graphicdesign.stackexchange.com/a/84571/144507

This program has features for filling/hatching, right? I'm not sure if that could be used here, but it might be better to do that in the SVG also, using something like the Inkscape extensions at https://github.com/evil-mad/EggBot/releases/tag/v2.8.1 / https://wiki.evilmadscientist.com/Installing_software.

nylen avatar Oct 14 '19 18:10 nylen