Family Instance from Mesh objects

Hello colleagues,

I’m just started to learn Dynamo and I got a task that looks simple, but I absolutely don’t know from what to start, any pieces of advice will be helpful.

So what I’ve got:
Mesh model, that contains a number of patches. Each patch has:

  • Size (Width and Length)
  • Rotating angle
  • Level

What I need to do:

  • Separate mesh model on different segments (because now it is represented as one single model with a lot of patches)
  • Insert in each patch a generic model (just a simple box), relevant to its properties (size, angle, level)
  • Each created box should be placed on a defined level and extruded up to its own

Do you have any thoughts about how to do that?

Here you could download the sample of mesh with patches -

@alexander.solopov ,


What do you try exactly? placing openings? do you need meshinstances in Generic model families?

instead you could export in .SAT format…?





I want to place cable boxes on the ceiling surface.

I’m not sure about SAT, but I can try to upload the contours of each patch like polyline in DXF, if it’ll be easier.

@alexander.solopov ,

each one is a instance? or severeal on an ceilingelement.



@Draxl_Andreas ,

mostly there are 3 main sizes (small, mid, big), but we could start from just one size

@alexander.solopov ,

these look like simple boxes… you can create one as GenericModel, just a box, the size is driven by type Parameters… later you can use dynamo for placing them

@Draxl_Andreas ,

yes, I was thinking in the same way. The question is how the script should look in dynamo?) I don’t have an idea which nodes it should include.

Not a beginner friendly workflow, but here’s a working prototype.

Hope it helps guide you to your project based solution. I imported the mesh as DWG then reconstructed it into solids using the face indices and some processing of geometry - unions naturally split into surfaces if you intersect them with planes. From here it’s a matter of picking an edge, getting its angle and then getting two sides of the surfaces. These can be used to place, rotate and set the box sizes.

I’ve attached my sample model which it seems to run on fairly reliably.

Testing model.rvt (1.4 MB)
boxy mcboxface.rfa (352 KB)
mesh to dwg.dwg (27.6 KB)
meshes.3dm (31.6 KB)

boxes by mesh.dyn (69.1 KB)



Thank you very much, mate! You did a great job, I’ll try to implement your script into my conditions!

1 Like