Flexible Christmas ornaments

2015-12-23 13_51_50-crosspattern.svg - Inkscape

Something that always amazes FabLab visitors, is flexible wood. By laser cutting special patterns in the wood, it is possible to make the wood flex without breaking. Aaron Porterfield has created an instructable with different patterns to create flexible wood. The flexibility of the wood is dependent on the thickness of the wood, the shape of the pattern and the size of the pattern. If you want to read more about the physics, click here.

Today, I made some flexible Christmas ornaments for the Christmas tree. We will need some general geometry and of course the flexibility patterns. I will cut the ornaments in 3mm MDF. If you want to create flexibility patterns for other materials or another material thickness, you will need to experiment with the pattern dimensions.

Here are some pictures of the final result, with proof of flexibility:


All of the source files can be downloaded by following the links below. You can also download them on my Thingiverse page.


The pattern

A pattern consists of a base geometry that is repeated horizontally and vertically. We will create the base geometry in Inkscape and use the translate functionality to repeat it. I will explain this for the line pattern, but the same method can be applied to create any pattern.

The goal

The goal is to create this interlaced line pattern. The lines are 20mm wide, the horizontal distance between two lines is 3mm, the vertical distance between 2 lines is 2,5mm.

2015-12-23 14_17_10-linepattern.svg - Inkscape

Drawing a horizontal line

Draw a horizontal line using the Draw Bezier Curve tool 2015-12-23 14_01_22-New document 1 - Inkscape. By holding ctrl when drawing ensures that you can only draw horizontal, vertical or diagonal lines. When you have clicked twice to make a horizontal line, Inkscape allows you to keep on drawing. To end your line, press enter. You should end up with something like this:

2015-12-23 14_04_25-New document 1 - Inkscape




Setting the line length

To set the line length, use the Select tool 2015-12-23 14_08_13-New document 1 - Inkscape to select your line. If you are in transform modus, you should see transform arrows around your line (see picture below). In the top toolbar, you can then set the width of your line, by selecting the correct units (mm) and changing the number next to W to 20. The height of the line is dependent on the stroke of the line and at this point we don’t care about that.

2015-12-23 14_08_56-New document 1 - Inkscape

2015-12-23 14_09_24-New document 1 - Inkscape

Basic shape

To create the interlaced pattern, we will need to duplicate and translate the line to its interlaced position. Because the line length is 20mm and the horizontal inter-line distance is 3mm, we need a horizontal translation of 11,5mm and a vertical translation of 2,5mm.

Press ctrl-D to duplicate your line on top of the old line. In the Menu bar, choose Object>Transform to open the Transform panel in the right sidebar. Select your line and enter 11,5mm as horizontal and -2,5mmm as vertical translation.

2015-12-23 15_02_41-New document 1 - Inkscape

This should be the result, two interlaced lines, ready for the pattern!

2015-12-23 15_03_09-New document 1 - Inkscape

Creating the pattern

First we will repeat the pattern horizontally. Select the two lines and set the horizontal distance to 23mm. Press ctrl-d to duplicate the two lines, then apply the transformation. Repeat this multiple times to get the desired width of the pattern.2015-12-23 15_08_50-New document 1 - Inkscape

The result will look like this:2015-12-23 15_11_30-New document 1 - Inkscape

Now we need to repeat the pattern vertically. Select all the lines and set the vertical distance to -2,5mm. Press ctrl-d to duplicate the two lines, then apply the transformation. Repeat this multiple times to get the desired height of the pattern.2015-12-23 15_13_29-

The result will look like this:

2015-12-23 15_14_12-New document 1 - Inkscape


Warning: count(): Parameter must be an array or an object that implements Countable in /customers/9/9/6/petervdb.be/httpd.www/make/wp-includes/class-wp-comment-query.php on line 399

Leave a Reply

Your email address will not be published. Required fields are marked *