Introduction: Parametric Chainmail in Fusion 360

Designing chain-mail just became a lot easier thanks to the "parametric" capabilities in Fusion 360. No more tedious copying-and-pasting or complex arraying all those hundreds of chain-mail links. Now you can change a couple of numbers and Fusion 360 automatically generates a completely new sheet of chain-mail in seconds.

In this project we will create a basic square-weave sheet of chain-mail. This is a simple project, but it isn't really an "absolute beginner" project. The focus is on learning how to use parameters, including how to use simple mathematical formulas to calculate sizes and locations of objects. It would be best if you should already understand some basic Fusion 360 concepts like:

  • drawing a sketch
  • dimensioning a sketch
  • adding constraints
  • extruding sketches
  • moving bodies
  • combining multiple bodies into one body (join)
  • making a rectangular pattern (array)

That's the basic outline of the steps in this project. It really is that simple.

If those steps seem complicated, well don't worry, I provide links to videos explaining the concepts. So even beginners can follow along.


  • I have reset the preferences so that the Z-axis is pointing up.
  • I use the terms "wire, crossbar and post."
    • Wire means the tube that forms the link.
    • Crossbar means the horizontal parts of the link (two on top, two on bottom)
    • Post means the vertical parts at the corners.
  • I also use the terms width, depth and height
    • Width = X axis
    • Depth = Y axis
    • Height = Z axis

Step 1: Sketch Some Rectangles

Let's start with a sketch. Later, we will add some dimensions based on parameters, then constrain the parts so that they stay aligned when the parameters are changed. Finally, we will extrude the sketch to make the first chain mail link, then create an array of interlocked chain-mail links.

To make a simple square chain-mail link we will need four square posts and four crossbars, so...

  • Start a new sketch on the X,Y plane.
  • Select the Rectangle tool and draw a 5 x 5 mm square near the 0,0,0 origin point.
  • Draw a second square 25 mm units directly to the right.
  • Draw two more squares directly above the first two squares.
  • Draw 4 rectangles (5 x 10) between each of the squares.
  • The squares will become the vertical posts of the chain-mail link. The rectangles will become the crossbars.

Video Links:How to Sketch in Fusion 360 and Advanced Sketching

Step 2: Create Some Parameters

Here's where the magic begins. Any CAD program will let you manually create a chain-mail link and copy it into a sheet of mail - then start all over from scratch every time you make a change - a tedious process at best.

But Fusion's amazing Parameters functionality allows you to create a list of measurements, then assign those parameters to the dimensions of objects in your model. When those parameters are changed, Fusion automatically updates every object that uses those dimensions.

Parameters are created and managed in a form similar to a spreadsheet. You access the Parameter function under the Modify menu.

Create Your First Parameters

We will start simply. Let's define some dimension parameters for the size of the "wire" in our chain-mail. Click on the Modify menu, and select Change Parameters at the bottom of the drop down. A pop-up form will appear. Next to the User Parameters label will be a green plus (+) sign. Click that plus sign to create your first parameter. A pop-up dialog will appear.

  • Type "wireWidth" into the "Name" field.
  • Set the Units to "mm"
  • Enter "5" for the "Expression"

Repeat until the width, depth and height of the wire have parameters.

  • wireWidth = 5 (mm)
  • wireDepth = wireWidth * 1
  • wireHeight = wireWidth * 1

Notice that the depth and height use the the original value entered for the width (multiplied by 1). This is a very simple mathematical formula, but we could also enter specific values for each dimension.

Now we define a parameter for how far apart each item must be for us to successfully 3d-print them.

  • clearance = 1 mm

Next, we use the wire sizes and the clearance between parts to help us set the dimensions for the crossbars. Each crossbar has to be long enough to fit two interconnected wires with clearance spaces between all the parts. So we use some simple math to create a formula, then add an additional 1 mm. That 1 mm is the only thing we should change. We can always add space (5 or 12 mm), but we need to assure the minimum space created in the formula remains intact.

  • crossbarWidth = 1 mm + (wireWidth * 2) + (clearance * 3)
  • crossbarDepth = 1 mm + (wireDepth * 2) + (clearance * 3)

That's all the parameters we need to dimension our 2d sketch. But let's go ahead a create a couple more parameters so we can extrude the flat sketch into the third dimension.

  • postHeight = 4 mm + ( ( 2 * wireHeight ) + clearance )
  • crossbarRaise = postHeight - wireHeight * 1

Notice that these parameters are also based on other dimensions and that the formulas assure that the links of chain-mail can interlock with enough clearance.

Now we're ready to use these parameters to dimension our sketch.

HELPFUL VIDEOS:Parametric Modeling and User Parameters

Step 3: Dimension Using Parameters

Now apply the parameters we created to dimension the sketch objects.

  • Type "d" and select an edge line on one of the objects.
  • Drag away from the line and a dimension symbol appears.
  • Type one of the parameters into the fly-out data-entry box that appears near the dimension - or type it into the field on the palette that appears

So which dimensions go where? Take a look at the attached photo. You will use the same parameter on the edges of multiple items.

  • Remember, all the width dimensions are on the X axis and all the depth dimensions are on the Y axis.
  • Notice that the rectangles change shape when you apply the parameter-dimension to them. That's our first hint that the parameters are working.

HELPFUL VIDEO: Sketching and Parameters

Step 4: Add Constraints to Your Sketch

It may be a good idea to lock one of your corners to the 0,0,0 origin point

Now we will use the parameters we just created to

HELPFUL VIDEO: Constraints

Step 5: Test Your Parameters

We have a well dimensioned and constrained sketch. If we did everything correctly we can change a few parameter values and the sketch will redraw itself automatically.

  • Go into the Change Parameter screen and try changing the wireWidth to a large value. Watch what happens when you click OK.
  • Now try changing the first value (not the formula) in the crossbarWidth parameter.
  • Make other changes and make make sure the sketch stays connected and rectangular.

If the sketch breaks, review the previous steps to make sure you did everything correctly.

And remember, you can move the timeline marker back to earlier steps and make modifications there.

Step 6: Extrude the Sketch

We have a 2d sketch that automatically updates based on user parameters, Now we'll extrude the 2d shapes into 3d objects.

  • Click on Extrude in the Create menu (or type "E"). This will stop the sketch and drop you into the modeling environment
  • Select all four of the corner squares. Use the pulling-arrow that appears to set the direction of the extrude.
  • A text-entry field will appear and show the extrusion distance. A dialog box also appears,
  • Type in a postHeight in the Distance field and click OK.
  • Select two of the crossbars and enter the appropriate crossbar parameter
  • Be sure the "New Body" option is selected before clicking OK
  • Repeat for the other two crossbars.

You should now have 8 separate objects.

Next we'll join them all together into one body.

Step 7: Move the Upper Bars

Now we move the upper bar.

  • Type "M" to invoke the move command.
  • Make sure you are using "Bodies" in the Move Object selector
  • Select two crossbars by clicking on them
  • Be sure you are using the Translate mode, not the Freeform mode. Fusion only seems to remember the values when the Translate mode is used.
  • Type in "crossbarRaise" into the distance field to move the bar the calculated distance.

We're beginning to see the power of calculations in parameters. the bar automatically moves to the correct height, and it will update its position whenever we change any related dimension parameter. We never need to calculate or enter another value - it's done automatically for us by Fusion.

NOTE: The values used in move commands also show up in the "Model Parameter" section in the Change Parameter screen

Step 8: Combine and Test

Now we join all the separate parts into a single body

  • Click the Create menu and select Combine (about half way down the menu)
  • In the palette make sure TargetBody is selected and
  • Click on one of the bodies
  • Now select Tool Body and select the remaining seven bodies
  • Choose "Join" for the Operation type and
  • Click OK to make all the wires into a single body.

You should now have a single body that looks like a square chain-mail link. When there are just a few items, this step doesn't make much of a difference. But when you have 1,000 bodies, it makes calculating the redraws much quicker.

Finally, test the parameters by changing the wire sizes, postHeight and crossbar sizes. The link should update the size and shape based on the values you enter.

Step 9: Make a Pattern

Now we will take the original link and create copies of it in a rectangular pattern


But first, we need to create a few new parameters. We need to define how many links we want on both the width and depth axes. We need to set the "main" pattern as well as the inner or interlocking pattern. Unlike the dimensions, these quantity parameters have NO UNITS, so make sure you change the unit selection in the Change Parameter creation screen.

  • patternQtyWidth = 4
  • patternQtyDepth = 3

Next, we need to define how far apart all the links will be from each other. For this, we'll need to create some formulas. These parameters inherit the "mm" units from the referenced parameters we created earlier.

  • patternOffsetWidth = ( ( 2 * wireWidth ) + crossbarWidth + clearance )
  • patternOffsetDepth = ( ( 2 * wireDepth ) + crossbarDepth + clearance )


  • Under the Create menu select Pattern, then Rectangular Pattern
  • In the pop-up palette:
    • Select Body as Pattern Type
    • Select Spacing for Distance Type
  • Click Objects on the pallette and select the link body
  • Click Directions on the palette and select an edge on the link
  • Use patternQtyWidth in the X-axis Quantity field and patternOffsetWidth for the Distance
  • On the Y-axis use patternQtyDepth and patternOffsetDepth
  • Click OK

You should now have a pattern of chainmail links (without the connecting links yet). Test the file by changing the numbers in the patternQty parameters. Also test by changing the wire and crossbar size parameters.

HELPFUL VIDEOS:Patterns and User Parameters and Pattern Basics

Step 10: Copy Pattern for Inner Pattern

We will need a few more parameters to position the start of the inner, interconnecting pattern of links. Notice that the "inside" quantities have one less that the main pattern. This will give you a "smooth" edge with the main-pattern defining on all four sides. You can change the value if you want a "ragged" edge.

  • patternQtyInsideWidth = patternQtyMainWidth - 1
  • patternQtyInsideDepth = patternQtyMainDepth - 1

We also need to define how far we move the copy of the original link before we make a pattern of it. The formula is simple - because these links fit in between the main pattern, the distance is half of the "link-to-link" distance.

  • patternMoveWidthInner = patternOffsetWidth / 2
  • patternMoveDepthInner = patternOffsetDepth / 2

Now we repeat the pattern operation using the same "patternOffset***" parameters that we used in the main pattern.

Now, you should have a full sheet of interlocked chain-mail. None of the links should have interference - they should weave in and out, but not touch. Once again, test all the parameters by changing them. Make the inks bigger and smaller, and make the sheet of links bigger and smaller.

Boom!!! - you're done. Now you can generate any sized sheet of chain-mail with any sized links you desire - all by simply changing a few numbers.

Step 11: Extending the Project

Now that you have a file for basic square weave mail, you can extend it to other shapes and weaves. Fusion's sketch-driven timeline approach allows you create very complex geometries. And the combination of parameters and constraints allows you to do quick design iterations until you find the look that you want.

Have fun and happy designing!!!


Lennerton made it! (author)2017-07-13

Nice project. When I printed I extended the notion to creating edge and corner pieces. Of course the basic piece is square, whereas the edge pieces are roughly half the width of a square piece and the corners are roughly one-quarter the size of a basic piece. Both maintain the spacing attributes of the basic piece. I also included eyelets in the corner pieces for hanging the chainmail. Thanks for the inspiration. Semper fi!

JON-A-TRON made it! (author)2017-07-11

Well done! There are so many possibilities with this technique. Thanks for sharing!

DaveP121 made it! (author)2017-06-29

Have you tested it yet? I have a selection of axes, swords and bodkin arrows if you are brave enough to wear a suit ;o) Haha! I'm kidding, seriously, looks fantastic, well done!

Saero made it! (author)Saero2017-06-29

Axes and spears would probably go through - unless ist was ways better than the medieval chainmail. Also sword thrusts could pierce...

And I have a different question... how much would a suit of this kind of mail weigh? :)

markk7 made it! (author)markk72017-07-03

Weight would depend on the size of the links really. I've had Shapeways print almost lace-like, super light versions. With 1.2 mm wires in PLA it runs about 20-30 grams for a 6"x6" sheet. But I've printed really thick, chunky designs about 1/2" thick that can get quite heavy. Best way is to check it in your slicer.

Saero made it! (author)Saero2017-07-03

and the size of links and density would enhance the protection, durability and weight... sigh... well it would still be good to test it. You might get a patent on new combat armour protection against slashing weapons, and earn a decent living through that idea.

markk7 made it! (author)markk72017-07-03

SCA all the way bro, but no... just no. And thanks!!!

arpruss made it! (author)2017-06-30

Nice design!

I'm curious how long it takes someone fairly experienced with Fusion 360 like you to make a design like that (once it's laid out in your head)?

I use OpenSCAD as I've found Fusion 360, and just about every other GUI-based 3D tool, forbiddingly difficult to use. The mere task of dragging objects along multiple axes is confusing to me.

But I'm wondering whether in the long run it might not be worth my time to put the effort into learning Fusion 360, because maybe with practice it's faster to design things with a GUI than to write code for it.

For comparison, it took me 17 minutes to remake your design (including one or two false starts) in OpenSCAD:

markk7 made it! (author)markk72017-07-03

Thank you. Well, after coffee on a good day, I could probably match that time. But I understand what you mean. I kept thinking that, "I could do this with a few nested loops much easier." And I could do things like make every third row thicker, or create waves across the sheet. Yes, the highly visual, every object must be shown and described model can be tedious, but learning Fusion gives you incredible control that I'm not good enough to program myself.

Parameters and constraints do really help in large, complex assemblies. But for repetitive patterns like this, the API might be better. If you're an algorithmic designer check out the API.

You get good access to the object tree and methods. You can use Python, C++ and JS. You can create inline scripts or plug-ins. And you can create custom interfaces. I haven't done more than poke around, but it looks pretty good to this amateur. I would be interested in what you think of it, and would it be worth my while to learn...

jabenoit made it! (author)2017-06-29

Great walk-thru. I've been using Fusion and Inventor for a while, and got the basics of parameters, but this walk-thru really made their use and power stand out. I also appreciated the frequent "test it out" - something I need to remind my engineering students, and myself, often!

markk7 made it! (author)markk72017-07-03

Thank you. I get confused easily, so the "test early, test often" habit is is a helpful compensating mechanism - and that's okay. If my grandfather could measure twice, cut once, it's good enough for me.

inconceivable1 made it! (author)2017-06-28

yo this is awsome!

markk7 made it! (author)markk72017-07-03

Thanks dude !!!

Kris82 made it! (author)2017-06-28

Great Turtorial

markk7 made it! (author)markk72017-07-03

Thank you!!!

erana_reborn made it! (author)2017-06-28

To the metal Bat-3d printe, Robin!

markk7 made it! (author)markk72017-07-03

Yay, thank you. As a wannabe wizard on a Wanhao budget I can only hope you're serious. And if you do, please oh please post pics.

bob8898 made it! (author)2017-06-28

Could you please post the Fusion file for the chainmail?

About This Instructable




More by markk7:MechaBoseControl Mix of 12v Lights & MotorsParametric Chainmail in Fusion 360
Add instructable to: