LaserCAD Workflow


#1

I think LaserCAD’s crumby file import capabilities have been a source of frustration for pretty much everyone. It’s the number one source of problems and questions I get after laser trainees try to start using it.

There are two options that I know to work:

  • Adobe Illustrator (.ai) works as long as you save it for a very old version of Illustrator. I used version 3, which is ancient. This usually works for me but often subtly distorts or omits parts of the artwork. This isn’t viable for most people since they don’t have Illustrator anyway.
  • AutoCAD DXF (.dxf) works pretty well, but only the older R13 version. There are certain capabilities of newer dxf files that LaserCAD can’t interpret. In particular, splines seem to be the thing that’s not supported. Unfortunately most software that exports DXF includes splines, with no option to approximate them with straight lines.

In my quest for a better workflow that is more accessible to all members, I found svgToDxf which is a thin shell script that uses Inkscape in headless mode to convert from svg➔eps, and then uses pstoedit to convert from eps➔dxf. Critically, pstoedit has options to dumb down the resulting DXF, including using straight lines to approximate splines.

The command I used was:

$ pstoedit -dt -f 'dxf:-polyaslines -mm' ./Layer1.eps ./Layer1.dxf

The DXF files it produces work nicely in LaserCAD, so there’s promise that this could be wrapped in an applet that runs on the laser PC, or made into a web service for converting files.

In the name of science, I tried to also produce a DXF with splines:

$ pstoedit -dt -f 'dxf_s:-mm' ./Layer1.eps ./Layer1-splines.dxf

Sure enough, this one crashed LaserCAD.

Other file prep

This doesn’t quite mean you can throw any SVG and have it cut very well. For example I used this file for my tests and while it looks like it would simple to laser, it needed some prep:

  • Strokes that have significant width need to be expanded into a shape. Since the paths are cut, they should just be invisible and the artwork should be represented entirely by filled objects
  • Similarly, text needs to be converted to outlines as well (not an issue for this file, though)
  • Overlapping objects need to be “unioned” together so that a single complex outline is cut, not a bunch of simple overlapping shapes.

Future work

Try it out and see if you can reproduce my results. Or if you have better workflow ideas you can post those.

If someone knows Windows better than me, maybe you can wrap pstoedit in a GUI applet of some sort.


Try my laser nesting software
#2

.ai V8 works fine. Use colors in AI to keep your designs organized (1 color in AI = 1 color in LaserCAD), it’s pretty sweet


#3

Good to know. I also prefer using .ai as it seems to be the only way to get actual splines into LaserCAD, rather than approximating them with line segments.

Apparently pstoedit can write out .ai files as well, so maybe that should be used instead of DXF. I will test.


#4

For anyone who is Mac based I installed the required tools using Brew Package Manager for OS X with the following instructions.

brew install pstoedit
brew tap homebrew/gui
brew install inkscape

Then you can run the above conversion script via terminal window.

Mark


#5

I tested pstoedit's ability to generate .ai files for LaserCAD. Seems to work great! This is probably preferable to DXF since it can properly import splines.

The command I used:

$ pstoedit -dt -f 'ps2ai'./VHS_logo.eps ./VHS_logo.ai

#7

So are we in agreement that everyone should use AI files from now on?

Assuming yes, I have a cool workflow that is totally untested.

I’ve written this batch script:

If it gets saved in the quick-launch bar of the laser cutter computer, you can drag and drop all your files onto the icon, and it will convert the file in place. Your .ai file will be created in the same directory.

Dependencies:
Inkscape, installed to default location in Program Files (this is already done)
pstoedit, installed to default location in Program Files:
https://sourceforge.net/projects/pstoedit/files/pstoedit/3.70/pstoeditsetup_x64.exe/download
Ghostscript, installed to default location in Program Files:
https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs920/gs920w64.exe

I don’t have any laser cutter projects on the go, but it should just take a couple minutes if someone wants to do that. The workflow works great on my machine. You can drop SVG, DXF, or EPS files onto the icon, and it’ll convert them to AI. Adding more filetypes would be pretty simple, too.


#8

Any requirements for the version of AI files if we start with AI?


#9

I’ve had good luck saving from Adobe Illustrator but setting the “illustrator version” way back in the save dialog. YMMV.


#10

Just wondering why the requirement to us AI files from now on?

For example Fusion 360 exports DXFs for sketches that can be laser cut.

As long as we can still import DXF to Lasercad I don’t see any issues with this script.


#11

You can use whatever you like :slight_smile:

Nothing is changing, other than an optional intermediate step that Luke is saying is more reliable.

Personally, I’ve had issues with Fusion 360 DXFs.


#12

In my experience the best way to get a file that the software is happy with is to import whatever file into CorelDRAW and export DXF from it. I’ve never had CorelDRAW’s DXF output cause trouble with LaserCAD. (Who BrANDs THis StuFF?) Unfortunately CorelDRAW doesn’t seem to be working on the laser computer right now.

I put @Jarrett’s .bat script on the desktop of the laser last night but I didn’t try it out. (@Janet got us a working DXF through OthER MEaNs.) Generally though, if the script works I’m happy to use it.


#13

I made the dxf file we used in CorelDraw 8.0 which is installed on the vinyl cutter PC.
I had tried to export a dxf file from my version of adobe illustrator (ancient version…2.0) but it was not good.


#14

Most VHS veterans have their own workflow, and that’s fine. There are lots of ways to do it. You can even handcraft a DXF file one bit at a time if you like!

Let’s get this thread back on track: The lack of a simple, canonical, robust, standard operating procedure that works for everyone is the biggest hurdle for new laser users and the biggest source of frustration for people after I run laser training. The goal here is to distill the best process and then document it. It should (in priority order):

  • faithfully reproduce the design in LaserCAD
  • work reliably from major vector formats
  • be concise enough to teach, remember, and document
  • preferably not require invoking a big graphics suite

A recap of this thread:

  • DXF and AI are the only practical ways to import designs to LaserCAD.
  • DXF files cannot include splines, as LaserCAD’s DXF interpreter can’t deal with them. Some software can approximate curves using a series of straight lines instead. This is what’s happening when you specify to “Save as R13”. Of course if your design doesn’t have splines then this is a non-issue. Lots of software doesn’t give you this option.
  • AI is also accepted by LaserCAD, and supports proper splines! Thus the suggestion that maybe it is slightly preferable to DXF, all else being equal.
  • AI and DXF both stem from proprietary software (Illustrator and AutoCAD respectively), but both are supported by various open source tools, including pstoedit.
  • pstoedit is small, simple, and headless. Perfect for embedding into a tiny applet.

@Jarrett has taken a stab at creating an applet based on the research in this thread. If it works as advertised, this means that when a first-time laser user brings their design as an SVG, we can say “sure, just drop it on this applet to convert it, then open it in LaserCAD” instead of what I currently have to tell them: Try Inkscape… still doesn’t work? Maybe CorelDraw… won’t open? try Illustrator on the Solidworks machine… it won’t boot? then sorry, no laser for you. :stuck_out_tongue:


#15

Has this script been set up on the laser pc yet? If not, i will give it a shot on Monday


#16

Pretty sure @bruce left it on the desktop but we didn’t use it last time we fired up the laser cutter.


#17

4 posts were split to a new topic: What kind of laser do we have?


#18

I tried out @Jarrett’s applet on some non-trivial laser jobs exported from Fusion 360. Unfortunately it seems that Inkscape is also unable to parse splines in DXF, so this applet can’t convert them either.

Here’s an example DXF file: Left arch.dxf.zip (1.6 KB)

Here’s how Illustrator (correctly) parses it:

And here’s how Inkscape and LaserCAD (incorrectly) parse it, omiting the spline entirely!:

Super frustrating!!

@rsim found a DXF Spline To Polyline plugin for Fusion 360 which can work around this by exporting curves as polylines. It actually works really well and that’s what I’m going to use for now. The drawback is that it uses line segments instead of nice smooth curves (although you can crank up the number of lines to get a better approximation. Here’s what the default settings look like (notice the not-smooth curve):


What kind of laser do we have?
#19

I was able to import an .AI version Illustrator CC into LaserCAD, but by unchecking Use compression.


What kind of laser do we have?
#20

I previously was trying to use Illustrator files in lasercad like @Nathanael_David said, the way that seemed to work best was saving out as old versions of .ai, the problem I kept hitting was what seemed to be a limit on data. The .ai files were able to remember the colour information but would drop off curve points if there was too much data in the file, this was ok at first but quickly became unusable. my latest workflow is:

  1. Save from Illustrator to .svg
  2. Open in Inkscape
  3. Select everything (ctrl+shift+a)
  4. Ungroup everything (ctrl+shift+g, do this a few times just in case there were groups in groups)
  5. Convert shapes to paths (ctrl+shift+c this will make sure all lines are a format .dxf understands)
  6. Save as .dxf

With this workflow I’m not always able to keep colour information (although it sometimes still comes across, not sure what the trick is there) so I’ll usually split files in to multiple parts based on power settings, _etch, _lines, _cut etc. The trick is to make a single shape as a bounding box that you keep in all files, that way when you import the pieces in to lasercad they’ll all line up, just remember to colour them as they come in since they’ll be selected and easy to recolour.


#21

I recommend the same steps, except you should sacrifice a chicken with a silver knife while chanting ancient Nerdic curses under the midnight sun after ungrouping the objects but before converting the shapes to paths.