How can i put aligned dimension and angular dimensions in floors?

Hi to everyone,

this is my firtst Topic, i’m trying to put dimensions in my floors with Dynamo. I need to do this because i work with different types (and a lot of elements) so i would like to reduce the time to do this manually in Revit.

Someone can halp me please?

I post an image to explane to me better.

Dimension%20in%20Floors

Thank’s to everyone.
Michele

Hey, If you search around here you should find some useful links.

Your basic workflow is to get References from the Element and define a line for the dimension location.

This can be quite tricky. I know that @Alban_de_Chasteigner is expanding his Genius Loci package to expand this functionality. I’d get the latest version and have a play.

Here’s one of my graphs, but as I say, I would probably use some of Alban’s nodes if I was to do it again :slight_smile:

I’m not sure there are any nodes for angular dimensions, but there is a method in the api…
Create Method so it is possible and the method looks similar to the other creation methods.

Good luck :slight_smile:

Mark

2 Likes

Hi @michele.fiaschi,

As @Mark.Ackerley pointed out, I have a few nodes to automate the dimensions in the package Genius Loci.

If I change the Wall Edges References node slightly, I can find all the edges of a floor.
Dimension%20floor

image

4 Likes

Can you share the dyn, or the python code?

EDIT :
For convenience, the python script is now a custom node : Compound Edges References.

4 Likes

Thank’s for the support @Mark.Ackerley

I try to do this later

Michele

Thank’s for the support @Alban_de_Chasteigner and also for the dyn file.

I try to do this later and after i post here the script with my solution.

Michele

Hello everybody,

Im new too dynamo and been practicing alot, i came across this topic and tried to copy the nodes in @Alban_de_Charsteinger solution! But it seems i am missing someting… because im getting back a NULL value the Dimension ByReferences Node.

Can anyone point out what im missing?

Thank in advance

Capture|690x223

Hi All,

I am having an issue with the dimension by reference it seems as it returning “fuction” for some reason? Any idea what am I doing wrong?

Hi,

Add a view to the View input of the Dimension.ByReference node.
The lacing must be “Longest” for several dimensions.

2 Likes

Hi Alban,

Thank you so much for your quick reply, I have implemented the changes as you directed but I am still facing the same issue. I must be missing something obvious as this post is my entry into dynamo world.

It appears that the default value of the dimensionType input has been disabled.
So right click on the port and enable it or add a codeblock with null inside.

1 Like

Alban,

Thank you so much, it has started dimming but slightly buggy, it seems to miss match lines and references at certain dims. Additionally how could I scale this into multiple model elements selection(multiple slabs), as that seems to wreak havoc.

You could replace the Collect.ElementSketch node with the Element.Location+ node (Clockwork package) and check if the order of the edges is the same.

After First line, they are in reverse order.

I am at the loss now, something is broken, it makes multiple sets of same dimension too. And when you select another element it tries to draw dimensions from old element positions.

Floor Dim.dyn (38.3 KB)

  • Here is a workaround to get the edges in the same order as the references :

Floor Dimensions V2.dyn (33.9 KB)

  • It’s possible to dimension several slabs at the same time with appropriate list levels and lacing.

It’s called element binding. Use the Dynamo Player or close the graph between each run.

1 Like

Hi Alban,

It works great on all of the floor previously drawn, but it seems to once again miss order the references if a void is applied to a floor. I assume the ordering is at fault again?

Hi Jonas,

Yes, you must reorder the curves and references once again and the graph starts to become more complex.


1 Like

Hello people! Great topic, great script.

@Alban_de_Chasteigner could you explain how does your “Dimension ByReferences” node work? Or actually, what do I need to feed in the Reference input to get the dimensions?

I would like to apply this script on more elements simultaneously? When I use the “Select Model Elements” node to select more Elements I get null values in the output. I’m guessing I have to rearrange the references somehow?