Tutorial 1: SVG Plugin for Google SketchUp
This plugin is geared towards the enthusiast designer (somebody who can’t justify expensive software for a hobby). It will allow you to use SketchUp (available free), along with an SVG editor like Inkscape (open source). This means that all of your exact calculations in 3D can be preserved as a vector format in 2D for the actual construction process.
Using Inkscape (or similar) you can edit SVG files and export them to a usable format. For example, an online laser cutting company like Ponoko uses EPS files or you can talk to a local laser cutter about their specific formats.
This tutorial will specifically present the pipeline from SketchUp -> to -> Inkscape -> to -> Ponoko.
When entering the Ponoko Design Challenge I found that there weren’t any specific tools to enable this pipeline (SketchUp is my favourite prototyping tool). It is really hard to design in 2D and visualise a 3D result (unless you’re an architect or do this for a living); that’s why I wrote the SVG plugin.
Before we begin, let me stress that you are learning as I am learning. I will try to provide information that is accurate, but I’m looking for feedback if you notice something wrong, or if you can add detail where needed.
Let’s start the tutorial process with some modest goals. We’ll start with a SketchUp cube, create parts that can potentially be laser cut, and then export these 3D parts to SVG, which is 2D, by concentrating on SketchUp object faces.
The SVG file can then be imported into a Ponoko template in Inkscape, an EPS can be saved, and then uploaded to the Ponoko Website for laser cutting.
You will need:
- Google SketchUp 6
- Inkscape
- A free Ponoko Account
- The SVG Plugin for Google Sketchup – See the readme in the zip file, or read the Wiki for installation instructions.
- Windows (XP or Vista – 32 or 64 bit) or Mac OSX (at this stage)
Step 1: make yourself a cube in Sketchup and decide upon material thickness. The image below shows a 4cmx4cmx4cm cube. [You can click on any of these images to see the full resolution snapshot of my desktop]
Laser cutting is all about fitting together what are essentially 2D pieces to recreate your 3D design. For this tutorial I decided to use a simple rebate fitting scheme for each side [I have no idea how well this will work in real life]. Talking with other enthusiasts makes me suspect that some glue will be needed.
Step2: Mark out the material thickness for each laser cut part (3mm in this case)
Step 3: Mark out where the rebates will be (it is easiest to let Sketchup choose bisecting points so that parts are even).
Step 4: Decide on how the laser cut parts will fit together by cleaning up the lines. Then select all of the faces that you want to export. You can put each face into a separate file, but it is more efficient to group objects together into files.
You can choose the entire object (with a double click), but this will result in extraneous faces. I’ll cover this later.
Step 5: From the right click context menu, or using the SVG icon in tool bar, bring up the export dialog box.
Step 6: Use the “…” button or type the name of the SVG file to be created in the text box.
Step 7: Since we are going to be using Inkscape and Ponoko, make sure that the check box “Scale for Ponoko Inkscape Templates” is selected. This gets around some importing issues with Inkscape by scaling the faces to be exported.
Step 8: An SVG file will be created, and you can open in in Inkscape with a double click.
Step 9: Confirm that the faces are valid within Inkscape (don’t check measurements if using Ponoko template option)
This is the kind of output you can expect if you select a whole object and export the faces – there are faces which are not needed for laser cutting.
Step 10: Once output is confirmed, load a Ponoko template depending on the size for laser cutting. Download the Inkscape starter kit from Ponoko for more information and the templates.
Step 11: Load the template, ready for importing your SVG objects
Step 12: Import your recently created and validated SVG file
Step 13: To fit the pieces within the safe area for cutting, right click and ungroup the imported file
Step 14: You can now arrange the pieces within the template, and next set the line thickness to 0.03mm. I have been using 1mm thickness until now to make visuals easier to follow.
This is what the pieces will now look like:
Step 15: Now save the file as an EPS (in a format that Ponoko recognises)
Step 16: Log into Ponoko and upload your design (don’t forget to choose materials)
Step 17: Get ready to cut. Will it work? No idea.
Over the weekend I will developing a few different cubes with different interlocking mechanisms using different materials. I’ll present the information in a second tutorial, and actually get the prototypes cut. Then we can see what approaches work, which ones don’t, and which need to be refined.
Oh, and by the way, I lied when I said that my SVG plugin was initially inspired by laser cutting. I first started work on it in order to make templates for wood work (it makes dovetail joins easy). Visualise the design in SketchUp, create a 2D templates for pieces, print out on paper and attach/glue/trace/etc. You then cut your design without having to use a scribe, set square or measuring tape. [Just make sure you're printer is accurate
]




















June 7th, 2008 at 6:19 pm
Sorry to all those who have tried to leave comments and failed. I’ve now changed my site setting to allow you to register a new WordPress account if you don’t already have one.
June 7th, 2008 at 6:22 pm
Bradley had a great comment that he emailed to me (since my site registration was screwed up).
“…your SVG exporter would be extremely useful to guys like me who would want to export a vector graphic of a SketchUp model, but from the same perspective as the current camera views rather than the top, side, and back views for a CNC-like application. I haven’t had a chance to look at the code yet, but thought I might ask you beforehand if it is physically possible to do this with SketchUp? This would be great for illustrations where you don’t want to use SketchUp’s renderer to color a picture (it’s a little limited), but rather use a program like Inkscape or Illustrator to create certain effects.”
June 7th, 2008 at 6:27 pm
I think that Bradley has a good point – there is a lack of this functionality in SketchUp at the moment.
Currently my code draws faces based on their normal, but it would also be useful to output a scene as SVG based on the camera (like the current bitmap export capabilities, but in a vector format).
The real issue that I see is the need for a robust depth ordering and face culling algorithm – the rest can be done using the code I’ve released. If anyone wants to contribute, then get in contact. In the mean time I’ll continue to keep you updated with any progress I make in this area.
June 13th, 2008 at 2:13 am
[...] cat, here’s a tutorial on making the same 4cmx4cmx4cm cube using some different techniques to Tutorial 1. I’ve even included some videos this time – beware they are a first edit, and nowhere near as [...]
April 24th, 2009 at 8:23 am
This plugin is straight up f’n amazing, even exports to scale, exactly what I need to make templates from my vinyl sign cutter. This saves me $500 I don’t have, Thank you.