Our friend found something here. Revit weirdness.
Life is good…
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:
So this spaghetti Dynamo produces this
But honestly – the graph looks like – … – fetching for words…
More elegantly we do it by tweaking the families into assemblies:
This graph is looking much better and produces a better result:
UI – merci to Data-Shapes (did I tell yop they rock ?) – so now lets see what it does:
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…
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:
The website: You’ll find it here.
A snippet from my graph – please hold on, full details in the coming days:
Without the ForceChildrenEval node – chaos
With the node – all good:
Saves the day tomorrow – at least I hope…
Life is good…
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:
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:
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:
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.
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:
So stay tuned…
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:
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:
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…
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/
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:
The graph behind it is – rather complex:
Let’s go through it step-by-step:
Here we analyze the line to build the scaffolding along:
We assemble the initial parts and rotate them into position:
And the rest is copying stuff around…:
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…
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:
So the story goes – while trying in good openBIM spirit to get an IFC into Revit we noticed that some elements come in faceted:
Let’s take a look at the roof – a piece of planar slab and still – a faceted import geometry:
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…
Let me walk you though this graph – first we are getting the element in question and its geometry:
Nothing new – now we deconstruct the mesh using sone secret sauce from Spring Nodes:
Now we construct a solid from the faces of the mesh:
And then again – Spring Nodes to our help – we create a loadable family of the category of our choice:
Which results in:
And see – it is a loadable family composed out of a free-form element:
And now let’s just contemplate how much we can do with creating genuine Revit solids out of meshes…
Life is good…
One of the things about Dynamo we love is the quick solution. OK – there are complex workflows we sometimes attempt and that is all fine and good and probably should be left to real programmers – but then, every day or two we encounter challenges to tackle…
So – tonight, Christmas Day, easy day, I am just prepping an IFC for use in tomorrows task and while getting it into Revit is shows a load of room related warnings.
The task is to use the IFC as a backdrop for a site model, so rooms are the least of concern for me right now and just lets nuke them out.
That’s the IFC in Revit (ouch – but that will be another story…)
That’s the Dynamo:
And that is all it needs – rooms gone – file performs well all is good…
More substantial Dynamo groove to come these days…
An very merry to all of you out there and our little creep in the attic chimes in – https://shutupandbim.wordpress.com/2017/12/22/and-a-very-merry-and-some-rants/
Another little Dynamo – this time we make sure that no water enters the basement and we”ll install a structural connection family at the bottom of the wall that joins basement wall and foundation slab together.
In Revit terms – positioning a line based family at the center line of the bottom of a wall.
That are the walls
This is the Dynamo:
Let’s quickly dissect the Dynamo:
This part only created the User Interface and if you want to know about that – please let me know.
Here is the more beefy part:
At first we need to get al faces from the walls and identify the bottom ones:
Very cool custom node – thanks to the Clockwork package
Next we need to get the perimeter curves of those surfaces:
Here we find the points to construct a line to place our family along:
Family placed, backed so that the next run will not remove already placed items.
And the result:
And life is good again…