Get data from floor and roof

Hi to everybody,

this is my first post and I’m super new in Dynamo. I’m looking for a way to get info about the dimensions and area of floor and roof created in a Revit file.
I would know also if there is the possibility to obtain the normal vector at external surface of floor and roof. I found a useful node for the wall “Wall.ExteriorDirection”, Iwould know if there’i a similar node for floor and roof.

Thanks in advance.

Floors (haven’t checked about roofs) have an Area parameter that you can call on using the GetParameterValueByName node.

As for dimensions, you will probably need to get the geometry of the object. The way you would get dimension from this depends on the floor shape and what dimensions you need, but for rectangle-shaped slabs, you could get the boundary curves and the lengths of those curves.

It is possible to get the normal vectors of a surface. I am sure there are some packages that contain a node to do it all for you but to do it with out-of-the-box nodes, you would get the surfaces using the node Element.Faces. Then use the Surface.NormalAtParameter node to get the normals of those surfaces. If the surface is flat, you could just use 0.5 for both the u and v inputs of that node.

That will get all of the surface’s normals. If you only want a single surface, you would have to use an if statement based on the normal’s X, Y and Z.

https://primer.dynamobim.org/05_Geometry-for-Computational-Design/5-5_surfaces.html

1 Like

Thanks kennyb6 for the first part of response. But I still have problem for the second part, what I mean is if there is a node similar to this (image below) that give directly only the external vector of the floors or roofs.

Immagine