Generating Elliptical Boxes Using a Laser Cutter and Inkscape




This Instructable will teach you how to make elliptical boxes of different shapes and sizes like the ones pictured above. These boxes are easy to customize so you can add your own personal touch.

Step 1: Tools and Materials

  1. A computer.
  2. Inkscape, a free and open source vector drawing application.

  3. The elliptical box Inkscape plugin, available from github (see below). There are two reasons for using this plugin instead of drawing everything by hand:

    1. Inkscape prints lines in the order and direction in which they are drawn. The plugin generates the cut pattern in a way that tries to minimize unnecessary laser movement.
    2. Generating the notch pattern on an ellipse is tricky. On a circle the notches are evenly spaced and the distance along an arc is easy to calculate, for ellipses it is much harder.
  4. Access to a laser cutter. Since laser cutters can be set up in different ways it is important to be aware of how your laser is set up. The one I have access to is set up as follows: red lines are to be cut, blue lines are shallow cuts (i.e. they don’t cut through the material but they leave a visible line) black or grayscale is engraved (this can also be a bitmap image).

  5. Material to make the box. MDF or multiplex works well, plexiglass is also possible but it is harder to bend. It is best if the material is not too thick, 3 or 4 mm works great.

(Edit September 30th: add reasons why to use the plugin)

Step 2: Software Installation

You can get an installer for the latest Inkscape version here. The installation is very straight forward and should not give you any problems.

To install the elliptical box plugin first download it here, this will download a zip archive containing three files. To install the plugin you need to copy and ell_box.inx to your Inkscape extensions directory.

The location of this directory depends on your operating system and on whether you want to install it only for yourself or for all users on the computer.


For a personal install copy the files to C:\Users\USERNAME\AppData\Roaming\inkscape\extensions (where USERNAME is your username). You can create the directory if it doesn't exist yet.

If you want all users to have access, copy the files to C:\Program Files\Inkscape\share\extensions (you need to have administrative rights in order to do this).

Mac or Linux

Personal install: put both files in~/.config/inkscape/extensions

Install for all users: put them in /usr/share/inkscape/extensions

If you start Inkscape the plugin will show up in the Extensions menu under Laser tools --> Elliptical box maker.

Step 3: Plugin Parameters Explained

Here is a quick overview of the parameters. Don't worry if they don't make much sense right now. The next step will be a step-by-step walk-through.

  • Unit: The unit that you want to use.
  • Material thickness: It is best if your material is not too thick because you’ll need to bend it. 3 or 4 mm works very well; 6mm is too thick for a small box (it may still work for a larger box).
  • Height: The inside height of the box.
  • Width:The inside width of the box. It is best to make this value bigger than the height if you want to prevent it from tipping over.
  • Depth: Outside depth of the box (slight inconsistency here, sorry)
  • Cut distance:The distance between the cuts on the round wraparound part.

The closer you put these cuts the more flexible it will be. Note that there will be an offset cut at half this distance. 2 – 4 mm works well.

This distance is recalculated to get an even spread over the available space so the actual value will be slightly different.

  • Number of cuts: This is the number of in line cuts across the depth of the wraparound. The fewer the cuts the more flexible the wraparound will be.
  • Lid angle:This is the angle that the lid takes up, measured from the center of the ellipse. 120° works well.
  • Invert lid notches: This inverts the notch pattern on the lid. Normally there is one notch on the body that keeps the lid from sliding sideways. If you invert it the lid can slide to the side (it's a bit hard to explain, just try it and you'll see the difference).
  • Central rib:This option creates a notch pattern and corresponding holes that allow you to easily create things such as: handles, center dividers or other decorations (see examples at the end of this tutorial)

Step 4: Creating a Simple Box With a Handle: Making the File

The output of plugin does require a little more work before it is ready to send to the laser so here is a step-by-step guide to create the box as shown in the pictures. It is made from 3mm thick MDF.

This page also mentions several Inkscape operations if you need more help on using Inkscape, check this page.

Start Inkscape.

  1. It is a good idea to set the page size equal to your material size (you can find this under File --> Document properties
  2. Run the elliptical box maker with the following parameters
    • Units: mm

    • Material thickness: 3

    • Heigh: 55

    • Width: 70

    • Depth: 60

    • Cut distance: 3

    • Number of cuts: 2

    • Lid angle: 120

    • Create central rib in the lid: Checked

  3. Click “apply” and close the popup window.

    You’ll notice that five items appear on the page. The
    topmost part is the body wraparound, below that is the lid wraparound. Then there is the side panel (there is only one for now, we’ll duplicate it after we have drawn the separating line between body and lid). The lowermost parts are the notch patterns for the inner and outer ribs.

    You don’t need the inside rib so go ahead and delete it (click on it and press the delete key).

  4. Finish the side of the box. By default the constituent parts are grouped so they can easily be moved as a whole. Before you can edit the side you need to ungroup it by selecting it and then selecting Object-->Ungroup and then click on a blank part of the page so you have nothing selected.

    Now delete the text on the side. You’ll also notice two green lines, these indicate the division between body and lid and you need to draw a cutting line. In order to do this use the Bezier tool from the menu on the left.

    It helps to also enable snapping in the right side menu and make sure snap to cusp nodes is selected.

    Now just draw over the green lines, the snap should help to hit the points exactly. Your last point should be a double click (otherwise you will continue to draw line segments).

    To turn this line into a curve use the path node tool from the left side menu , select the middle node and make it symmetric.

    Use the path node tool to make something that looks like the example above. You can also go for a different shape if you like.

    You can now delete the green guide lines.

    The side is now complete. It is a good idea to group all the lines (use the select tool from the left menu, draw a box around the side panel and use Object-->Group).

    Now use Edit-->Duplicate to make a copy of the side panel and position it on an empty part of your sheet.

  5. To create the handle you need the outside rib. Ungroup and delete the text like you did for the side. There is also one line too many on the right side, delete that as well.

    Use the Bezier, Ellipse and Path node tools to draw a handle that is attached to the notches like in the image on the left. Use your creativity; there is absolutely no need to copy my design.

    Once again it’s a good idea to group all parts of the handle if you are done with it.

  6. All parts are now ready to be cut. Like I said before the laser I use will only cut the lines that are in red.

    To make all lines red use Edit-->Select all and then Object-->Fill and stroke…, this will give you a popup window. Select the Stroke paint tab and pull the red slider all the way to the right (or type 255 in the textbox next to it) all your lines are now red and ready to be cut.

Step 5: Creating a Simple Box With a Handle: Cutting and Assembling

Using the laser

I cannot give an explanation for every type of laser so here is just a very short general description.

To your computer the laser cutter looks like a printer with some extra software to manage settings and control the laser. Make sure the laser is properly focused and that you have selected the proper material template.

If you have never worked with the laser ask if someone can help you get started.

Assembling the box

This can be slightly fidgety but with a bit of patience it is certainly doable.

It can be tricky to fit the second side because you can make the first side fall out. You can always use tape or rubber bands to keep it together.

Assembling the lid should be easier as it is smaller and less curved. Always start with the center rib.

The box should stay together without any glue. If you want to make it more robust you can use a little bit of glue (wood glue works well for MDF).

Step 6: Beyond Simple Boxes

As you can see in the above images it is possible to use the plugin as a base for more imaginative designs.

Here are some tips and observations:

  • Always start your assembly with the central notch part
  • Fitting the central part can be tricky, especially on strongly curved parts.
  • You can use a thin knife to help push or pull the wraparound when you are assembling a tricky bit (just be careful that you don't cut yourself).

Converting notches to holes

You can see that the notches in the side panels have been changed to create holes where the front fins are. The easiest way to do this is by using the ellipse tool and editing the start and endpoints of the elliptical arcs (see also the last picture above). Inkscape has the tendency to change the arc to a segment when you do this so you may have to switch it back to arc.

Removing holes on the wraparound

If you tick the Central rib check-box you will get the holes and notches to make a rib. If you do not want the rib to go all the way round you can delete parts of it. Removing the notches is trivial, just select them and press delete.

Removing the holes in the wraparound is slightly more work but not very hard either. First delete the horizontal lines that make up the top and bottom of the hole.

You may now notice that the vertical lines above and under where the hole used to be are shorter than the ones to the side of it. If it doesn't bother you then fine, you are done.

It is however not too hard to make them longer. First select all short lines on the upper side (use shift-click to select multiple items) and then adjust the length. Then use the same procedure for the lower side.

Step 7: Closing Thoughts

Thanks for reading this far.

This is my first instructable, I hope you like it.

There are some of my files on this page, try them if you like (they all require 3mm thick material).

The plugin is hosted at Github so if you want to add features, report bugs or just take a look please go here. The programming language is python.

3 People Made This Project!


  • Big and Small Contest

    Big and Small Contest
  • First Time Author

    First Time Author
  • Toys Contest

    Toys Contest

36 Discussions


7 months ago

Anyone got the Shark pattern? I am busy cutting the fish one now but owuld love to try the shark one. Great Instrucitble! Well Done


1 year ago

It doesn´t work for me. I have the same problem with the helper extention.

1 reply

2 years ago

I am still trying to get this to work. I had the helper module problem, i did what was said below, now i'm getting this...

Traceback (most recent call last):

File "", line 230, in <module>


File "C:\Program Files\Inkscape\share\extensions\", line 263, in affect


File "C:\Program Files\Inkscape\share\extensions\", line 159, in getoptions

self.options, self.args = self.OptionParser.parse_args(args)

AttributeError: EllipticalBox instance has no attribute 'OptionParser'

5 replies

Reply 2 years ago

I'm not sure what's going on here. The error occurs in which is a module that comes with Inkscape.

It's probably best to try and use the plugin from here: which is the released version.


Reply 9 months ago

That worked, can the creator of this page please update the links?


Reply 2 years ago

I have exactely the same error:

Traceback (most recent call last):

File "", line 230, in <module>


File "C:\Program Files\Inkscape\share\extensions\", line 263, in affect


File "C:\Program Files\Inkscape\share\extensions\", line 159, in getoptions

self.options, self.args = self.OptionParser.parse_args(args)

AttributeError: EllipticalBox instance has no attribute 'OptionParser'

I have tried to uninstall and reinstall Inkscape and I have copied the helper module in - as it says below.


Reply 2 years ago

And now - for some for me unknown reason - it works!! Strange.. ;)


Reply 2 years ago

HUZZAH!!!!!!!!!! IT WORKS NOW!!!!!!!! thank you thank you thank yoU!!!!!!!!!!!!!!


9 months ago

The downloadable pre-made patterns are useless to me, no matter which settings I choose while importing (since the svg format is too old), all the corners of the notches are either overlapping or not even touching, it would take hours and hours to line them back up, I'll just use the pattern generator if it works. By reading these comments, it has flaws, well, we'll see.


10 months ago

Thanks for sharing! Great Instructable.


11 months ago



1 year ago

Great Instruckable!!!

Are the shark and dino available?


2 years ago

The new version of this inkscape extension needs the inkscape_helper module, which is downloadable from the author's github repositories. Put the two files in a folder called "Inkscape_helper" (note the capital I) and put the folder into the extensions directory where you put the ell_box.pi and ell_box.inx files.

2 replies

Reply 1 year ago

Put the two files in a folder called "Inkscape_helper"

which two files do you mean? there are more files in the "inkscape_helper-master" folder -->

Screenshot (42).png

Reply 2 years ago

True. I have that problem. Where I find the helper module. Please download link.


1 year ago

Even with the Inkscape_helper files in place, this plugin does not work with 0.92 version of Inkscape. That's unfortunate, as this could be quite a wonderful add-on for the program.


2 years ago

Fantastic plugin and great Instructable! just made this little box, worked first time :-) Thanks


2 years ago

Great project and thank you for the files.


2 years ago

Thank for sharing about nice plugin but I have an error about helper module. How can I try for that?