Create a solid from a topography

Replace the last line in the code block as your mass seems to consist of lines in addition to solids

sld3=sld2.Difference(Solid.ByUnion(List.Flatten(Element.Solids(bld),-1)));


topoSolid.dyn (11.7 KB)

3 Likes

That worked!

Thank you so much man!

1 Like

@Vikram_Subbaiah
Hi I am very new to dynamo and revit.
I used one of the samples above to try to generate a 3d solid. Its the one for @lupamudrasharma.88 and i cant get it to generate the solid.

The topo generates but no solid.

Any idea of what is wrong? Im using Revit 2021.

Many Thanks.

@StormyC Difficult to make suggestions without images and/or files of your attempts.

@Vikram_Subbaiah Thanks for your reply.
This area considers me to be a new user so I can’t upload a file.


Ive tried to upload an image. the result is a very tiny topo but no solid and in dynamo there isn’t a preview of the solid as above. Any chance I can email you my Revit file?

Check your project Units.

image

Not sure what I should change…

Changed length to m, can see the topo but still cant see a solid…

Sorry, very new to Revit…

OK, I turned on ‘background preview’ in dynamo and can see the generated solid. How do generate / add this solid into revit?

Many thanks.

You can use DirectShape.ByGeometry or FamilyInstance.ByGeometry.

Great - thanks, sorted it out just as you answered. I’m uncertain if this should be a ‘new topic’ but I’m going to post it here anyway…

OK here is what I’m trying to achieve:
Generate topography from points.
Generate columns that pass through the topo, giving each one a reference.
Get the distance that each column passes through the topo.

So far my workflow is
Use revit & dynamo to create the topo and columns from excel - this i have done.
Use revit and dynamo to generate topo solid - also now done - thanks.
Export 3d dwg and create solids from the export in AutoCAD
Use interference check to create solids that represent the amount the columns have gone through the topo (making sure the topo solid is deep enough)
Measure the length of each interference solid.

Can this be done just in Revit using dynamo because the last part - getting the length, also knowing the column’s mark is tedious.

Thanks very much.