Generative SVGs for engraving

Wow - thanks everyone! I’m happy to see folks digging this; I normally make all my stuff just to try things and learn from it, or just to amuse myself. It’s always exciting when other people like it too :blush:

For @timtsuga and others wanting to get this running, there are a few simple things to do:

  • First, you have to install Processing (https://processing.org/download/)
    Note: you don’t have to donate to download - just choose “No Donation”

  • Launch Processing

Processing uses “Libraries” of external code for some things, and I used a library for the UI. Since the library is maintained by someone else, I don’t include it with my app. So to install this library:

  • In the Sketch menu, select: Import Library -> Add Library…

  • Scroll down the list of Libraries in the window that opens, or use the search field to find “ControlP5” and select “Install”. After it is done installing (shouldn’t be more than a few seconds) you can close the Library window.

That’s it for getting Processing ready. Now, to get the code:

  • Go to my github repository (https://github.com/gwygonik/SquiggleDraw)

  • On the right side is a green button “Clone or download”. Click it!

  • In the pop-up menu that opens, choose “Download ZIP” and save it somewhere you want

  • Unzip the file and it will create a folder named “SquiggleDraw-master”

  • Rename the folder to just be “SquiggleDraw”

  • Double-click the “squiggledraw.pde” file inside that and it will open in Processing

  • Click the “Run” button at the top of the Processing code window (it looks like a video Play button :arrow_forward:)

The app should run without issue, and you should see the UI and a sample image. You can now load images, tweak parameters, and then click the “Save SVG” button to have a file to do whatever with :metal:

If the app does NOT run, there would be errors in red below the code. Message me with what that says and I’ll try to help out. Every machine is different, so I can’t say if there are problems with your setup or any “known issues” – it works for me :stuck_out_tongue_winking_eye:

37 Likes