Hi All
I have already written some code which replicates the "Extract Solids From Surface" tool in Civil 3D
It takes a surface, extracts its triangles, extrudes those triangles down to form a 3D solid, then runs a union command on the 3D solids to create a single solid.
All of the above works, but the union command takes a long time to run.
I'm finding my script takes up to 600 seconds to run when trying to union the solids on a large surface.
When I switched to inserting each individual triangle solid into a block, the run time came down to 30-40 seconds, so its clear the union command has a huge time overhead, particularly when a surface can have tens of thousands of triangles.
I still want to use the union option if i can, mainly because AutoCAD seems to struggle when I go into 3D view to view the output. I have read somewhere that AutoCADs performance will be much improved if it's trying to display a single large solid, rather than 20,000 small individual solids. At the moment, trying to view that block which contains 20,000+ individual solids grounds my Civil 3D to a halt, and I've got a pretty decent CAD spec machine.
Does anyone know of any way in which I can speed up the union command? Could the BREP tools help out?
Is it possible to create an AutoCAD surface or some kind of mesh from the surface traingles so when i do the extrude command, I'm doing it for the whole surface in one go (rather than on individual triangles)?
Any ideas welcome!