Change thickness of floor using RoofOrFloor.SlabShapeByPoints in Clockwork


Hi all,

I’m using Revit 2015 with to model a 30-story building, and I want to create a slider that represents the thickness of the floor slabs in my building. Can I use the RoofOrFloor.SlabShapeByPoints node in Clockwork to achieve this, even though slab thickness is a read-only value? The node description reads “Transform a slab shape based on a list of XYZs” but what do these XYZs represent, and how should I input them into the node? Beginner Dynamo user here - please help me out!


Hello Idris,

The above mentioned node is actually responsible for modifying the slab shape similar to the following command in the UI:


If you have predefined floor types with set thicknesses, You can try something like this to change the individual floors’ type and thus their thickness:




Thank you, Dimitar! It seems a lot easier to change a floor to another floor type that is already defined in Revit. Actually, I found that if you highlight one floor element in Revit and press the “Modify Sub Elements” button, then press Esc, and then try to change the thickness parameter of that floor in Revit using the SetParameterByName node, it actually works as though thickness is not a read-only parameter! (For reasons unbeknownst to me.)

Now, is there any way I can modify a family type like floor thickness within Dynamo itself, without having to use this roundabout hack? Or maybe there’s some way for me to get the coordinates of the slabs I’m trying to modify and change their shape (in terms of their thickness/height) using the RoofOrFloor.SlabShapeByPoints node?

Thanks for your help!


Hi Idris,

Not sure how you managed to change the instance thickness, but good job I guess? :slight_smile:
There is a way to change the floor thickness but it involves accessing the API. I’m not sure if there are any custom nodes out at this moment that do that.


Hello all!

Dimitar, can you talk more about how can I change the floor thickness? I tried the method described by Idris, but it didn’t work.

Also, there is a way to access the parameters inside the category “Structure” in the image below? Create a layer through Dynamo?



Hi Fernando,

I’m still not aware of any nodes that deal only with changing the thickness.

If you download my package “spring nodes”, you’ll find a node called “FloorType.Duplicate” . It creates a copy of an existing floor type and changes the thickness of just the structural layer. You can open up the node and adapt it to your particular needs.




Hi Fernado,

To access parameter inside category structure use Custom node from Clockwork package called “FamilyType.CompoundStructureLayers”.



Hello Dimitar and Kulkul, thanks for the replays!

Dimitar, the node “FloorType.Duplicate” worked very well, thanks for making it. I don’t have experience creating or editing nodes, but once I wasn’t succeed changing the floor thickness, my next step would be the creation of a node to do that. Any clues of how I get this? I can email you, if you prefer.

Kulkul, thanks for the hint!

But once you can access the values, there is a way to edit these values through Dynamo?