How to Convert Cuboid to Element in Revit?

The concept of this Dynamo node is to create an invisible box in a parking lot, and Revit will detect any elements that intersect with this box. It will also highlight those elements for easy rechecking.

I’ve tried to convert a cuboid to an element in a Revit file, but I haven’t found a node to make that happen. Does anyone know how to solve this?

Here’s my Dynamo node so far, but I’m stuck here.

We can’t read the image as it’s a screenshot instead of a canvas export.

My best guess is that you want to use a FamilyType.ByGeometry node followed by a FamilyInstance.ByPoint node (tip: the point should be the min point of the bounding box for your original geometry).

Thank you for reply. And sorry for the image. I manage to edit image as you recomment. I hope its better than before.

Thank you for your advise as well. I going to try it and I hope its give the result as I want.

I’ve tried as your suggestion and I found it got error as you can see in the picture. I don’t know how to solve the problem. Did I do something wrong ?

Hi @parus_s guess you need a categori

1 Like

It’s worked. Thank you so much. but how do you know its error because of category ?

And one more thing. Is it usual that its take a lot of time for running result ?. I waiting for about 30 minutes for just 5.5 mb file.

Not sure with the time…i know categori isnt is a string

The error message explains that to you. Read this carefully:
image

It says this:
“I need these: a solid, a string, a category, a string, a material, and a string.
but got these: a solid, a string, a string, a string, a material, and a string.”

It helps to write it out like I did here so that the ‘expectation’ is directly above the ‘received’.

1 Like

Revit file size means very little to the point of effectively nothing. A LOT of data can be generated from very little content.

  • Assume a vector takes 3 doubles so 192 bits to store.
  • A point mesh of say 501 vectors and 167 faces can therefore be broken down into 0.14mb of data.
  • Assuming a transform takes four vectors to form so you can store one in 768 bits.
  • With the remaining 5.36mb of space you can create 6973 instances of said geometry which results in something like 3.5 million mesh points.

All those numbers are way off as they don’t take everything into account. As an example things shrink way down when you add the other stuff in the file (materials and textures), but our hypothetical file is standard text - things grow again when you take into account Revit’s 1:20 compression ratio, but shrink again when you take into account everything else it stores in there. But no matter how y ou slice it: file size isn’t directly related to performance these days.

As far as why it’s slow: the conversion and expansion of that geometry from Dynamo to Revit can be slow (multiple sets of , and then you’re doing intersection testing in a cross product structure, which will be slow at a certain level of complexity, and then you’re converting to a bounding box and then a cuboid… it’s a lot of added back and forth which is going to slow stuff down. You also may have Element Binding at play, and converting those cuboids to family instances isn’t going to be quick as Dynamo has to geoemtry to SAT (so first it tesselates, then exports to a fancy text file), then Revit needs to start the family, then import the SAT, then load the family into the project…

How long would it take you to do all of this by hand?

1 Like

I see. Thank for the explanation.

So if its were you. Do you have any idea to make it shorten the process or make it faster ?

Hard to say as there are some things which don’t make sense, what is in the “all elements of category” node in the bottom? I can’t see the category or the size of the elements but that is a big geometry request.

Adding a modeled clearance to the parking families likely makes more sense to me, as you can the use element intersections in Revit directly.

1 Like