You're blocking ads, which pay for BlenderNation. Read about other ways to support us.

Generating a Spiral Staircase with Python and BMesh – Part 1 of 2


Salai Vedha Viradhan writes:

The BMesh API is a standalone module that houses all of Blender’s mesh editing tools. Every mesh tool that we access through the UI, uses some BMesh API function (or some combination of BMesh API functions) under the hood.

In this two part crash course, we are going to learn how to use the BMesh API by generating a spiral staircase. Here’s a summary of what we will be doing in each part:

  • Part 1 – Introduction to BMesh and generating a single stair – Introduction to the BMesh API, understanding the geometry of a spiral staircase, creating a single stair using mesh operations like creating vertices, extrusion, spinning, etc.
  • Part 2 – Replicating the stair and creating railing and balusters – Take the single step element from Part I and replicate it using Matrix transforms and translations to create the spiralling steps, and similarly generate the railing and balusters

Don’t be put off by the fact that we are going to be generating only a single step in this part. 🙂 We have quite a lot of ground to cover in terms of understanding the math behind a spiral staircase which will be foundational to the next part.

Read the Part I article here.

About the Author

Salai Vedha Viradhan

I am a tech enthusiast from India, currently based out of Chennai. I am interested in Python, Blender, Three.js, GLTF, Web Development, and 3D graphics in general. I have experience in building CLIs, tools for manipulating 3D assets, automating processes, 3D visualization, etc. I write regularly on my blog and Twitter.

Leave A Reply

To add a profile picture to your message, register your email address with To protect your email address, create an account on BlenderNation and log in when posting a message.