Using the Pinning feature of BMesh for architectural modeling

Here is another article about new features of the upcoming Blender 3d 2.50, and this time I will talk about BMesh again. If you are not aware of what BMesh is, well it’s a new system to manage and manipulate mesh objects in Blender. The new system has a lot of enhancements and improvements compared with the way Blender deals with mesh objects today. It’s still in development, but we can take a look and test it based on some test builds available in graphicall.org. A new feature has been added to BMesh and it’s a pinning system to protect vertices from unwanted transformations.

If you have used BMesh before with Blender 3d 2.50, nothing has changed. The only difference will be displayed at the properties of the 3D View, like image below shows.

modeling-architecture-bmesh-pinning-01.jpg

We will find an option called Pinning, with two separated buttons.

Here is how t works, let’s imagine that we are working on the modeling of a wall like this:

modeling-architecture-bmesh-pinning-02.jpg

And to protect the model from unwanted transformations, we will lock the edition of some vertices to only occur at the X axis. So, we will select the vertices and check both Y and Z axis and press the Pin button.

modeling-architecture-bmesh-pinning-03.jpg

As a way to show that those vertices are protected, a blue line will mark the edges connecting the vertices.

modeling-architecture-bmesh-pinning-04.jpg

If we try to edit or transform the vertices, they won’t suffer any kind of transformations. The only way to edit the object is with transformations in the X axis. This is a great way to protect our models, and make sure that all transformations will occur at the correct axis. To unpin the vertices, select them again and press the unpin button. We could constraint the transformations in Blender already, but it requires an extra edition every time to constraint the transformations. With the pinning option, we will be able to set it only once.

There is a keyboard shortcut too, which is SHIFT+RETURN and ALT+RETURN to pin all unselected objects and unpin all selected objects respectively.

To try this feature, you can visit graphicall.org and download a test build of BMesh already with the pinning feature for your system.

Share Blender 3D Architect!

Comments

  • chimericidol
    Reply

    Hey just wanted to tell you that I think your blog is great. I always find some interesting stuff. Keep up the good work!!!!
    Thanks!!!!

  • Allan Brito
    Reply

    Hi chimericidol,

    I`m glad to know that you like the blog.

    Regards

  • Dread Knight
    Reply

    I think this is an awesome feature! I’m looking forward to use it in the official releases of 2.50 🙂

  • Satish ‘iluvblender’ Goda
    Reply

    Very nice…

  • Lucas da Costa Dantas
    Reply

    Good,
    yes great .
    I posted an idea about this on BlenderNation .
    Very nice to see developer on action,
    congratulations .

  • MmAaXx
    Reply

    AWESOME feature!

  • shadowphile
    Reply

    This looks like another great feature!
    I’m concerned though about visibility. Once a bunch of vertices have been locked, it seems like it might be hard to decipher which ones have been locked on which axes. I’m thinking a feature similar to the vertex groups would be necessary, where I can command to highlight all vertices that have a particular axis locked, or something like that.

  • frigi
    Reply

    @shadowphile:
    The pinned axes are not stored per vertex but rather are a global effect, because otherwise it would cause problems really fast as you already mentioned.

    I’m currently working on a good concept to support vertex groups and I think storing the axes per vertex group would be the only practicable solution. At least if it gets communicated really well to the user, otherwise it will be just as confusing.

    If it even is necessary to be able to pin vertices along different axes at the same time is the question which stands before all that, though. It would be great to get some user feedback on this topic. Personally I think it would confuse more than it would help in most situations.

    Anyway, such sort of discussion should take place on the wiki because it’s difficult and time-consuming for me to check multiple websites for suggestions all the time.
    Here’s a link to the page itself: http://wiki.blender.org/index.php/User:Frigi
    Just click on “Discussion” at the top if you wish to contribute anything.

    P.S.:
    I will also transfer this to the discussion page for future reference.

This site uses Akismet to reduce spam. Learn how your comment data is processed.