Hi everyone,

I need to intersect multiple Dynamo Solids with an imported mesh from a Revit Topography to calculate the excavation volume. I faced some difficulties here. The mesh Toolkit is not working with my mesh, converting the mesh to a Dynamo mesh by using the Vertices and FaceIndices also didn’t work. Has anyone an idea how to do this?

I’m using Revit 2016/Dynamo 1.0.0/MeshToolkit 1.0.0. I can update any of this if this solves the problem.

Thanks, Fabian

You could convert the mesh to a polysurface and try to intersect

This might help …

Thanks @Vikram_Subbaiah. Now I have converted the mesh into a Solid.ByJoinedSurfaces(). When I now want to intersect my generated solids with the terrain solid, Geometry.IntersectAll results in an empty list´. I also tried Solid.DifferenceAll getting an error saying “cannot Difference two solids”.

Isn’t the Revit method of doing that is with Topo, Pads, and Phases?

@truevis: More or less, yes. But I need to create the second topo somehow. All I have is the imported mass of the terrain and my basements. I create the excavation volumes using a working space and the angle of embankment for the basements. I can then also import the new topo in Revit and use this method, but right now I cannot create the new surface.

@Vikram_Subbaiah: Here’s a screen shot.

If I use the Intersect method, it works, but IntersectAll isn’t working. I also tried filtering first, because some of my solids do not intersect the geometry.

btw: DoesIntersect returns around 250 times true

*Geometry.Intersect* will also work with multiple geometry.

Try replacing *Geometry.IntersectAll* with it. Change *Lacing*, if necessary.

First didn’t work either. But update Dynamo to version 1.1.0 helped a lot. Thanks for the help.

Now the only problem left is that with intersect I get a lot of seperate solids. I have 5 groups of solids intersecting each other (you can also see it in the image) and I union them seperatly. For 4 groups everything works fine but for one of them I get the error message: “Warning:Solid.ByUnion failed. Unable union two Solids : INCONS_COIN – coincident intersection edge previously non-coincident”. Any idea why this happens?

First I load the foundation in the 5 groups (grey group), then I get the base plane of every foundation and create a excavation volume (green group). This results in 5 lists of all the volumes. Now I like to join the volumes to 5 solids (they are all overlaping) to get the 5 intersection volumes to calculate the mass (red group). But the Solid.ByUnion operation fails for one List of solids with the error message described above

As you can see, I have found a work around for this. Nevertheless I like to know the reason for the error to avoid it in future projects…

Its difficult to say why its failing since I dont have the files. Please feel free to email them to me

at monika.prabhu@autodesk.com. Alternatively if this was a case with large dimension you can test them in 1.2.3.xxxx builds on DynamoBIM.org as we have fixed ASM scaling issue(https://github.com/DynamoDS/Dynamo/pull/6991). Please retest and let us know.