Civil 3D assemblies and adaptive components

In preparation for a training I got a little sidetracked when I needed to model a road. Relatively sane people would open up civil 3D create an alignment add an assembly and create a corridor. 

When a corridor gets created in Civil 3D, an assembly is placed along a 3D path (combination of the alignment and a vertical profile) and surfaces are generated between every successive instance of that assembly. (in the image below you see a bunch of assemblies placed, without the surfaces)

A simple assembly could look like this one below

With this adaptive component family I can do similar things as with the assembly above.

If we add a bit of dynamo and one of the best BIM tools (excel) in to the mix. Let’s place a whole lot of this adaptive component and create a loft between these. (this is not the same road as the one shown above in Civil)

In order to do that I first created an excel file with the coordinates for the adaptive points. For me it worked better if I split the xyz values on different sheets in excel.

I tried an adaptive component with 3 points but something kept going wrong for me so I used a two point adaptive component for left and right.

Get the points together from left and center. Do some list thingies. Tell the adaptive component to be placed at those points.

You will get something like this

Select them all and and press the create form. Do the same for the right side. 

Roads tend to be build up out of several layers. You can reuse the excel data you have for the first and add a dynamo trick. Take the z values and subtract the thickness. The nodes in the green area are copies of earlier work.

Of Course this is nowhere near a real road but if I were to get the xyz values from a corridor surface from civil I could recreate quite a bit of it. 

Some of the extensions are doing this already. But that’s not nearly as much fun as trying to do it yourself with dynamo.

Civil 3D assemblies and adaptive components

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: