Creating a soil model from borehole data - solid creation issue


I am trying to create a soil model from borehole data in dynamo and revit, occasionally using python to manage my lists better. From the borehole data, imported as a csv file, I can create a topography/mesh/polysurface. I am using this polysurface to cut a large cuboid into the corresponding layers of soil. Now, this works fine if the surface cuts through the whole cuboid. I am using the geometry.split node here.

The issue arises though, when i only want to cut a certain part from the cuboid, when the surface does not cut through the whole cuboid like in the following picture. The yellow and brown surfaces run out and do not continue. My dynamo script does not work, as the cuboid is not cut by the surface.

Is there another node or another way that I can tell dynamo to cut a certain part from my cuboid, even if the surface is not cutting trhough the whole cuboid? I need to somehow creat a solid from 2 polysurfaces (they touch each other) and substract that from the remaining cuboid. Any ideas?

not the answer to your question- but do you have Civil3D ?

If so, I’d use the ‘geotechnical module’ It is a cut-down version of Keynetix
Someone has done all the hard work

I can’t quite remember the details- I think I created surfaces suing this method in C3D, then used LandXML format to get into Revit

1 Like

I created a similar workflow in Civil 3D with Dynamo and not with Revit due to the fact that Civil 3D creates the TIN Surfaces better than Revit. Once I got the surfaces, I realized that I was not taking into account “lens/lentils” for the strata layers. How are you considering this strata? I know that there are some software which works with Python, gemPy, for instance, and create these lentils properly. However, the algorithm used by these software are quite complex.

1 Like

Please, find this interesting article that I had in my bookmarks.

You´ll see that to build a smooth and accurate geology model you need to take into consideration that some layers will “disappear/appear” if the closest boreholes do not have that specific layer or they have. For that reason, we will have “lens/lentils” and if you create a normal TIN triangulation between boreholes, you are not considering those lentils.

Here I post other websites I found interesting when I made deep research about this matter a while ago:

If your using civil 3d you should be able to use the geotechnical module to read BoreHole data to then generate the associated layer surfaces.

I would generally use civil 3d over revit for anything related to topo until this has been completed from the revit roadmap. Trello