Slide background
Slide background

LRCZ Blog

Just another WordPress.com site

The joy of using a pressure cooker..

February 9, 2018

I admit – i (sometimes these days) like to cook – and the pressure cooke is a childhood memory…

610Gh2-UW6L._SX355_

So – now there is this project that I am not supposed to talk about but it is a pressure cooker of sorts – only bigger and we need to model a perfect structural model for some interesting analysis.

So our pressure cooker looks like this:

untitled.19

And the challenge was to auto-join all walls to the floor plate above to create a clean analytical model:

Noname.png

And that is a 50 second Dynamo – probably the first one I wrote that worked untested – take a look:

Capture

What we do here – first we select the walls and the floor above in Dynamo. We analyze the categories and filter for walls and floors:

Noname

Then we join using lacing longest:

Noname

Element.JoinGeometry is from the Clockwork package.

If you want to go hardcore and not use custom packages – this is the relatively siple Python behind it:

import clr
clr.AddReference(‘RevitAPI’)
from Autodesk.Revit.DB import *
from System.Collections.Generic import *
clr.AddReference(“RevitServices”)
import RevitServices
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager

doc = DocumentManager.Instance.CurrentDBDocument
items1 = UnwrapElement(IN[0])
items2 = UnwrapElement(IN[1])
i = 0
booleans = list()
TransactionManager.Instance.EnsureInTransaction(doc)
for item1 in items1:
    try:
        JoinGeometryUtils.JoinGeometry(doc,item1,items2[i])
        booleans.append(True)
    except:
        booleans.append(False)
    i += 1

Posted in: Uncategorized

clr.AddReference(‘RevitAPI’)

February 5, 2018

Our friend here  has something to say…

Posted in: Uncategorized

See the writing on the wall…

January 28, 2018

Doing Revit families is fun – dong complex Revit families is even more fun but then you need at mit of the special Spice to enjoy it…

So – my family with nested Structural columns works fine and it flexes nicely… in the Family Editor environment…

Noname

some parameter change

Noname

Bon – it flexes as expected…

Noname

Once loaded into a project document – boy oh boy – this does not look pretty:

Noname

And WHY IS THAT  you might ask – rightfully so… seems that the issue is buried in the structural column family…

Noname

This upper level is – IMHO opinion – the havoc… we here at LRCZ rebuilt the column totally new without the upper level datum and not…

Life is good…

P.S.: we understand that this topic is a rare special phenomenon but for details – PM me…

Posted in: Uncategorized

Nike’s got a brand new shoe…

January 26, 2018

Our friend found something here. Revit weirdness.

Life is good…

Posted in: Uncategorized

Sunshine superman…

January 20, 2018

Donovan… the bass line is kinda cool and sets a good background for banging brains with Dynamo/Revit under pressure…

Saturday is family day… – yes – in a perfect world Saturday would be the kind of family day when you just sleep long – have a relaxed afternoon with some nice treats outside and then convene for a nice dinner…

Perfection does not exist – so Family day became Revit family day and – as a disclaimer – there is a bit of Dynamo involved but not much… some complex family stuff and more yet to come…

So – the job is to create repetitive scaffolding elements in Revit and – after banging heads for days finally – we found the conclusion how it goes easily…

So that was the first attempt in Dynamo positioning all the little nitty -gritty elements individually which was surprisingly stable – but hey – that graph is nothing I would like to see on any of may client’s desk:

Noname

So this spaghetti Dynamo produces this

Noname

But honestly – the graph looks like – … – fetching for words…

More elegantly we do it by tweaking the families into assemblies:

Noname

This graph is looking much better and produces a better result:

Noname

UI – merci to Data-Shapes (did I tell yop they rock ?) – so now lets see what it does:

Noname.png

So – if you are interested how that all worked out feel free to reach me…

Code – here. If you want to follow it you can reach me for sending you the testbed with the families.

For the rest – life is good…

Posted in: Uncategorized

A teaser…

January 17, 2018

So – for the last three nights I banged my head why – oh why – on re-execution of my graph my FamilyInstances.ByPoint would jump all over the place like headless chicken.

It dawned on me – Dynamo wants to be clever and caches stuff -so all the elaborate placement and rotation nodes – well – they wanted to be clever and stuff flew around like… (to be filled in)

Prorubim to the rescue:

Noname

The website: You’ll find it here.

A snippet from my graph – please hold on, full details in the coming days:

Noname.png

Without the ForceChildrenEval node – chaos

With the node – all good:

Noname

Saves the day tomorrow – at least I hope…

Life is good…

Posted in: Uncategorized

I predict

January 15, 2018

Another song that is stuck in the back of my head and the one line of lyric is hilarious “You’re gonna take a walk in the rain. And you’re gonna get wet”

You want to build a complex assembly in Revit using Dynamo and I can assure you – you’ll have a hard time keeping the marbles up there in your scull working together.

Lets roll this from back to front for a change – the result looks like this:

Noname

The Dynamo behind it is probably not the most elegant piece of graph on this planet but – finally, after a week of tinkering around it seems to be stable:

Capture.png

Nonetheless to say – you won’t be able to decipher the graph from the screenshot so if anybody interested ping me or try to dissect it here.

We got a UI around it – thanks to Data-Shapes:

Noname

And if we throw it into Dynamo Player we won’t see the ugly spaghetti graph…

Nonetheless, the beauty of all of this is that we managed to position 2787 individual elements in a single run – not too bad in my humble opinion.

Noname

Zooming in:

Noname

Life is good….

PS: Credits for the parts go to Dutch Steigers.

PS1: This will be refactored by using less Dynamo and more nested families such as this one:

Noname

So stay tuned…

 

 

 

Posted in: Uncategorized

Darling you gotta let me know…

January 14, 2018

Family time – isn’t it. Not the schmooze kind playing with your kids (especially when your kid is closing in on becoming 20) – nor the zoo time part – Revit families… lets take a look at the following picture:

Noname

Could all this be a complex nested family – probably so. But your’s truly is sick and tired of  troubleshooting complex families that tend to break out of the blue so we went the hard way and did this entire assembly in Dynamo. The graph is probably the worst piece of spaghetti code:

Capture.png

So the word is out – nested families or Dynamo – or both? This story will be continued…

If you want to get the graph for playing around – grab it here.

The testbed Revit project – grab it here.

Next steps – the strategy is to create basically 2 families of repetitive parts to position with Dynamo to cut the chaos down. Ongoing project, lots of new stuff learned…

Life is good…

Posted in: Uncategorized

In the flat field…

January 5, 2018

Now this is a complex one… look at the assembly of parts in this screenshot – credit to Dutch Steigers – follow them here – https://www.facebook.com/DutchSteigersBv/

Noname.png

Crazy amount of details and components – so – in Dynamo we try to recreate this and – warning – this is an ongoing story, the Dynamo graph is at 50% yet but there is a system behind the madness…

So – the graph can do this right now:

Noname

The graph behind it is – rather complex:

Capture.png

Let’s go through it step-by-step:

Here we analyze the line to build the scaffolding along:

Noname

We assemble the initial parts and rotate them into position:

Noname

And the rest is copying stuff around…:

Noname

This is just a sneak peek int what is going on there but if you are interested stay tuned or send me a PM or mail – again, credit to Dutch Steigers for giving us the opportunity to make this happen…

Life is good…

Posted in: Uncategorized

Win through being cool…

December 26, 2017

Again – a silly song title – name the band and the album and I’ll send you a gift.

Nonetheless – let’s get to the topic and my new friend Alfred thinks it has some real potential as well – here is Alfred:

IMG_20171226_224645.jpg

So the story goes – while trying in good openBIM spirit to get an IFC into Revit we noticed that some elements come in faceted:

Noname

Let’s take a look at the roof – a piece of planar slab and still – a faceted import geometry:

Noname

To clarify:

Noname

Import symbol… ouch – we do not want to have that, Revit is not good with foreign geometry at all and especially this kind of import symbol that turned out to be a mesh.

Hmmm – how are we going to make a genuine Revit geometry out of this? Dynamo helps…

Capture

Let me walk you though this graph – first we are getting the element in question and its geometry:

Noname

Nothing new – now we deconstruct the mesh using sone secret sauce from Spring Nodes:

Noname

Now we construct a solid from the faces of the mesh:

Noname

And then again – Spring Nodes to our help – we create a loadable family of the category of our choice:

Noname

Which results in:

Noname

And see – it is a loadable family composed out of a free-form element:

Noname

And now let’s just contemplate how much we can do with creating genuine Revit solids out of meshes…

Life is good…

Posted in: Uncategorized