Updating Civil 3D Pipe Networks

Hi All,

I’ve written a dynamo script to set sump elevation, rim to sump height and sump depth to pipe network structures that have already been created. The script works and values are populated within structure properties however there is no visual update in the structure height.

The work around that I have found is to select each structure after running the script and “edit structure properties” and then click apply(this updates the height in 3d). I’m just checking if there is a way to automate this last process so that I don’t have to manually select each structure after running the script.

@sobeshan.pillay
Share dyn and dwg, we’ll see how to help.

Thanks Vladimir. The script (attached) itself is working fine. It’s just the next step to update the structure in 3D that I currently have to do manually and would like to update. I have no issue sharing the DWG however I don’t think you have the parts list I am using. The test file file contains only 3 structures.

SUMPELV.dyn (41.5 KB)

Well, how i can check without dwg? Prepare simple example, if you want help.

Are you setting all three values at once? Have you tried just setting one only and seeing what happens and if your structure actually adjusts.

I think your graph is trying to set a single parameter using three different methods all at once and causing an error inside Civil 3D.

Hi @JPhil,

I have tried with just one variable and the same issue arises.

Test.dwg (976.7 KB)

Variable or Action? I’m talking about the second to last nodes in your graph.

What I’m trying to say is that you only need one of those three Action nodes to do what you’re trying to do.

I suggest, if you haven’t already, to freeze RimToSumpHeight and RimSumpElevation, then run your graph again. If the structure doesn’t change, alternate the frozen Action nodes so you’re testing each Action at once.

If that doesnt work, then I’m out of ideas.

To solve your problem, you can get the coordinates of your modified structures and set it again (dynamo way to refresh the structures).

Hi @Ahmed.Kamal.Moussa

Thanks, I’ve tried this but I still need to manually update the structures so they show in 3d.

Thanks @JPhil , I’ve tried freezing structure.setrimtosumpheight, structure.setsumpdepth, structure.sump elevation two at a time so that the third in each case is isolated but still no luck.

@sobeshan.pillay can you show, which changes applies, when you do manually do apply?

Hi Vladimir,
Before (see red line at bottom for indication)

After

You can fix this by applying rules to the Structures, Camber has a Node for that.

Hi @sven.jacobsNQ7MJ ,

Thank you so much. Do you perhaps have a workflow or example? I will experiment with the camber package in the meanwhile.

Actually it does not work, sorry about that. I have only used this when changing pipe inverts with dynamo and then updating the structure sumps by using the apply rules node. This works. Changing the sump elevation directly through dynamo and applying rules does not fix your problem.

Hi Sven,

I’ve found a workaround. There were previously just structures on the drawing. When creating pipes and connecting them to the structure and therafter running the script for sumpdepth the structure obtained the required depths. I then deleted the pipes and the structure depth stayed the same.