from Civil to Inventor

The Autodesk enthusiast exile

Civil 3D – Part Builder Part 4

We will pick up where we left off from Part Builder Part 3.

Open our saved part “Wingwall sloped” from the last session.  Adjust the view so that you have something similar to the following image:


It’s time to speed things up a bit, so as I refer to procedures, I will once again detail them, and thereafter I will just state that it needs to be completed. 

Note: Halfway through I realized some changes needed to be made, in order for this process not to be more confusing than it might already appear.  If I missed any odd things in the images, or got out of sync with the variable names, please notify me, and I’ll do my best to correct them.

In this session we will create another offset plane, and additional profiles and transitions. Before we do, it would be prudent to create the remaining profiles that will be referenced to our (current) Right Plane. These will be the locations that the extending walls project into, the “tie in” points.  You should be fairly familiar with the basic procedures, Lord knows you’ve had tons of time to practice since my last post, we will pick up the speed a bit.

Note: I will refer to the profiles by Name, to avoid confusion.  Some have not been created yet, so you ill understand better as time goes on.  I felt that telling you NOW instead of in the middle of this was better or your understanding. I will show them in UPPERCASE as well. The names are as follows:

BASE PROFILE = the profile controlling the bottom Transitions, the “floor”.

LEFT and RIGHT PROFILE = These are the wing wall profiles, symmetrically placed to the Left and Right on the respective planes.

ORIGINAL PROFILE = This is the Profiles already created in the previous sessions, that represent the Rear Wall.


Sometimes you have numerous features lying atop one another, and some visibility is really needed.  Selection control is reduced, so shutting things on and off is essential, as you will see.  Let’s shut off the extrusion so that we can constrain to the previous Profile. Otherwise when we try and select things, we get the last thing created.

Expand the Modifiers, and Right click on the Transition, and Select Visible.


As you should see, the Extrusion disappears, leaving the 2 ORIGINAL PROFILES previously created. Now we can add 2 rectangular Profiles to the Right Plane, one to the RIGHT, and one to the LEFT, lying inside the ORIGINAL PROFILE that was already there.

Right Plane Revisited

Right click on the Right plane, Select ‘Add Profile’, and then ‘Rectangular…’

Select 2 points inside the ORIGINAL PROFILE, and repeat the process.

Here is a sample to give you some reference.


Now we need to dimension and constrain the new Profiles. Add dimensions to the LEFT and RIGHT PROFILE for the width.  We will not need the height dimensions, as we will control the height with constraints.

Right click on the Right plane, Select ‘Add Dimension’ , then ‘Distance’…’

Select the 2 Top points of the LEFT PROFILE, and repeat the process for the RIGHT PROFILE as well.

[*TIP: The menu scripts commands to the command line, so you can right click ENTER, or just hit the ENTER key to reinitiate the command in repetitive processes.]

We want these LEFT and RIGHT PROFILES constrained to the ORIGINAL PROFILE.  Constrain the upper left point of the LEFT profile, coincident to the upper left point of the ORIGINAL PROFILE, then the upper right point of the RIGHT PROFILE coincident to the upper right point of the ORIGINAL PROFILE.

Right click on the Right plane, Select ‘Add Constraint’, and then ‘Coincident…’

Select the point combination as specified above.

The bottom of our walls are still hanging free, and need to be tied to a base. The wall we have created so far has no base. I had considered adding the base at the end of the workflow, but I fear that the additional constraints will be too confusing. To simplify the model, and this process, we will assemble the base into the face of the Right Plane.  To do that, we need to add another rectangular profile below the geometry we have now, with a height of ‘bThick’  Hereafter, this will be called the “BASE PROFILE”.

Add a Rectangular Profile to the Right plane, selecting 2 points inside the previous Profile, near the bottom.

Add a distance dimension to the points along the right side of the BASE PROFILE.

Now we need to constrain it to the bottom of the face of the wall (ORIGINAL PROFILE).

Add a Constraint to the lower points of the BASE PROFILE, Coincident to the lower points of the ORIGINAL PROFILE, Left to left, and right to right.

Now we need to add the thickness to the BASE PROFILE, Add the angle parameter, and edit the dimensions of the 2 LEFT and RIGHT PROFILES.

Right click on the Model Parameters collection, and select ‘Edit…’

Double click on the LenA7 value under the equation column, and change the value to be ‘bThick’.

Now it is very important to ADD THE THICKNESS to the bottom of the  REAR WALL TO ACCOMODATE THE NEW BASE.

LenA2 (Right Plane height dim) = ‘bHeight + bThick’

LenA4 (the Rear OS plane height dim) = ‘bHeight + bThick’

Select the Add button and create a new User Parameter, called ‘bAng’, set the equation to be 45, and the custom parameter to degrees.

LenA5 = ‘bThick/cos(bAng)’

LenA6 = ‘bThick/cos(bAng)’

Select the Close button.

You should see something that looks similar to this. Some dimensions were turned off for clarity. image

Now that the base is positioned, ALL WALLS will reference the BASE PROFILE. This consistency will make the model easier to understand and easier to troubleshoot.  Lets constrain the LEFT and RIGHT PROFILES down to the BASE PROFILE.

Add a Constraint referencing the lower left point of the LEFT PROFILE, Coincident to the upper left point of the BASE PROFILE. 

Repeat this process, on the right side of the RIGHT PROFILE.

The walls should be constrained and all the dimensions set. Now we need an offset plane, to control the middle of the part. 

The Mid Plane

Do not become frustrated by the equations I use in this session.  They are not complex, but a bit long occasionally. Don’t worry. This is not because of Part Builder, and you may never use this kind of feature in your work.  I needed to affect offsets based on the angles we are using, so that no matter what slopes or widths, the part will always shape out properly. For now, just type out the equations.  If you use the calculator to key them in, then make sure to evaluate the extra parenthesis before you close the dialog.

Right Click the Work Planes folder and select ‘Add Work Plane…’

Select ‘Offset’, Enter a description (I used “Mid Plane”) and click OK.


Pull the plane towards you in the view and select a point to set the offset distance.  It doesn’t matter what distance, as long as you can still see the plane.  We will change the distance in the parameters.  Lets go there and correct the OS plane distance, as well as the descriptions of the OS Plane Distances. 

Right click on the Model Parameters collection, and select ‘Edit…’

WPOf2 = ‘bWidth’…Change the description to “Mid Plane OS Distance”.

WPOf1 = ‘bThick’…Change the description to “Rear OS Distance”.

A value from Part 3 needs to be updated.  The LenA1 parameter/dimension needs to reflect the Width of the structure, PLUS the angular cross section of 2 walls.

LenA1 = ‘bWidth+((WPOf1/cos(bAng))*2)’

Close the dialog.

[*Tip: Use the calculator button for the complex (sort of) equations, and press the evaluate button to see if what you enter is what you expect before proceeding.]

Now we have to repeat the anchoring process outlined in the 2 previous planes.  I will simply say to go back to Part 3 and review the anchoring process for the Rear OS plane, and repeat it EXACTLY for the Mid Plane.

Anchor the plane features as previously discussed for the Rear OS plane.

Add the BASE PROFILE at the bottom for the base, and add 2 distance dimensions, 1 along the top points, and 1 along the side points.

Add a distance Dimension from the Green anchor line, to the bottom line of the new BASE PROFILE.

We tied the dimension to the bottom because we want all the dimensions to be similar for each plane to plane, making troubleshooting easier.

Constrain the new BASE PROFILE such that the outer bottom points are equal distances from the mid anchor point.


At this point the New BASE PROFILE should have 2 dimensions controlling its size, and constraints and a dimension tying its location.

Add LEFT and RIGHT rectangular profiles above the BASE PROFILE, and add height and width dimensions to the LEFT PROFILE only.

We will use constraints this time to control the RIGHT PROFILE without having to dimension it, such that as the LEFT PROFILE parameters are changed, the RIGHT PROFILE will update in kind. (We could just dimension the RIGHT PROFILE as well, but I want you to practice the Equal Distance Constraints)

Add Equal Distance Constraint to the RIGHT PROFILE, so that the distance along its upper points is equal to the distance along the upper points of the LEFT PROFILE.

Repeat the constraint for the side distance.

When the model updates, the profiles should be identically sized.  Now let’s get them fixed in space.

Constrain the LEFT PROFILE by its lower left point, coincident to the upper left point of the BASE PROFILE.

Repeat the process for the lower right point of the RIGHT PROFILE, to the upper right point of the BASE PROFILE.

Now that the features are controlled in space, lets change the dimensions.

Edit the Model Parameters as follows:

LenA8 (controlled height) = ‘bHeight + bThick’

LenA9 (Base width) = ‘LenA1+((tan(bAng)*WPOf2)*2)’

LenA10 (Base thickness) = ‘bThick’

LenA11 (left width) = ‘bThick’

LenA12 (left height) = no changes yet.

Below is a screenshot of the variables as I have them now, just in case something got fouled up.  Remember, it doesn’t matter what your variable names are, as long as the equations are related to the correct geometry.



Oh, I forgot to change the rear plane offset. (you may have already changed this value)

WPOf1 (Rear OS Distance) = ‘bThick’

Close the dialog.

Here is the litmus test.  If you rotate your view such that the left edge of all LEFT PROFILES, ORIGINAL PROFILES, and BASE PROFILES are aligned.  There should be nothing out of line.


This is the milestone. After this, it’s all gravy….Well almost.

We need to set the height of the walls at this plane.  This wall is sloped according to grade, and we want that to be controllable.  We need a User Variable.

Create a User Variable named ‘bSlope’, with a value of 3.

Change LenA12  = ‘bHeight-(WPOf2/bSlope)’

Now we can create Transitions between the profiles on the Mid plane and the respective profiles on the Right Plane.

Right Click ‘Modifiers’, and select ‘Add Transition…’

Select the BASE PROFILE on the Mid Plane, and then the BASE PROFILE on the Right Plane.

Repeat for the LEFT PROFILES, and then the RIGHT PROFILES.

[*Don’t forget you can ENTER to repeat the last command]

You should end up with something like this.


Did you ever get homework from a workflow session?  Let me be the first.

Create the Toe Plane, Offset from the Right Plane a distance of ‘(bHeight-bThick)*bSlope’.  Insert the Anchors.

Create the appropriate BASE, LEFT, and RIGHT PROFILES, dimension and constrain them properly.  The Width and Height of the LEFT PROFILE is ‘bThick’ (You decide how to get the RIGHT PROFILE sized properly). The Width of the BASE PROFILE is the width of the Mid Plane BASE PROFILE.

Add the 3 Transitions.  You’ll get no credit if you can’t create the Transitions because you could not select the Mid Plane Profiles.   (That’s 2 hints in 1, by the way)

Remember when using parameters that can feed off of each other, to use the variable from the reference, and not to copy its equation.  For example, previously we needed the equation from LenA1 to complete the calculations for LenA9…LenA9 = ‘LenA1+((tan(bAng)*WPOf2)*2)’… We simply used LenA1 to carry all that over.  This way everything cascades. 

[Tip*: any time you can change 1 parameter and effect numerous others intentionally, then DO IT]

In the next session we will review your Homework. We will go on to create the preview image, and set the layout point.  We will configure all the Table data, and publish this thing.

Check back for the conclusion…

Part 5

December 9, 2008 - Posted by | Part Builder, Pipes | , , , , , , , , , , ,


  1. I am leaving a comment because our company is just starting to use civil for some things.. and i have been left in charge of making up the styles and what not that the application engineers will be using. I am needing Civil/partbuilder to allow me to rather make a pole like object above ground rather than below. I need to make a Light pole come in similarly like a man hole does underground on the profile view. I seem to not be able to get this to work.. I am hoping someone with your knowledge may be able to help me. if so i would greatly apprieciate it!!

    Comment by Tim Newendorp | December 18, 2008 | Reply

    • Tim, Styles is the key. Like I said in the email, even on simple projects, styles and layer management makes production streamlined. Civil 3D is the future, and we all need to get a good foundation laid for our own benefit.
      Remember, if you need a style set created, post it to the web site, or email me at civil2inventor (at) cox. net

      Comment by John Evans | December 24, 2008 | Reply

  2. Mr John Evans, thank you very much for your post. I’m from Argentina and I found it very useful to understand the functioning of the part builder. I need to create a section of rectangular concrete pipe with chanfles at the corners. In turn, the thickness of the walls, tile and slab above background are different. I wanted to make a query: There any way to create it in the part builder. If you want I can send the section in CAD. Thank you very much again. Best wishes.

    Comment by Matias Deagustini | December 23, 2008 | Reply

    • Matias, thank you for your post. Send me the cross section to civil2inventor (at) cox. net
      I’ll look at it.

      Comment by John Evans | December 24, 2008 | Reply

  3. John, I have a very limited understanding of part builder and I am trying to create “dual pipes” for use in civil 3d. I have built the model similarly to what is currently used in part builder, and had some success with sizes and locations updating in part builder but it will not work when I try and use them as a “pipe” in Civil 3D. Any help you can give would be great! – Mike

    Comment by Michael Putnam | December 29, 2008 | Reply

  4. John, Thanks for creating this series. This is probably the best (easiest to understand and follow) guide of any type I have ever used. You have an excellent way of communicating your points. Keep up the good work.

    I’m sure you’re a busy guy, and I certainly don’t mean to be a bother, but do you have any idea when the “conclusion” will be posted? I’m currently working as an intern over winter break from school, and my assignment is based on this very concept. I’m on the edge of my seat, waiting for Part 5.

    Thanks again, this is great!!!

    Comment by Will Bulloss | January 5, 2009 | Reply

    • Will, I added an update post about the situation.
      Your killing me, because I love adding stuff to the site, and everyone really seems to like the part builder stuff.
      I’ll email you.

      Comment by John Evans | January 5, 2009 | Reply

  5. John,
    Great part builder series! I have been able to follow your tutorial and logic all the way though Part 3 with no issues. On Part 4, I have run into a few gaps,I notice the equation for LenA3 was significantly different as well as the LenA9 value (76.9706?). I get the same LenA9 value, but don’t get the signifigance. What is the best way to costrain the bottom profile for the mid-plane workplane? The LenA9 value seems to shoot my bottom profile up 76.9706 units from the anchor line. Any ideas?

    Comment by Darian Klare | July 12, 2009 | Reply

    • Darian,
      Let me compare your notes to the article. We have a lot of issues with Part Builder, that have not been resolved. Feel free to email me if you need to hurry me up.

      Comment by John Evans | July 15, 2009 | Reply

  6. […] Back to Part 4 […]

    Pingback by Design and Motion | July 1, 2010 | Reply

  7. I am a year late to the party here but I’m stepping through the tutorial and I think the order of the dimensions in the tutorial and the order used in the equations is different for LenA8, LenA9, and Len10 (“Add the BASE PROFILE at the bottom for the base, and add 2 distance dimensions, 1 along the top points, and 1 along the side points.Add a distance Dimension from the Green anchor line, to the bottom line of the new BASE PROFILE.”) Tutorial has the user adding dimensions to base width, base height, then control height, but the equations are ordered as control height, base width, base height. Other than that great tutorial so far though! Nice balance of information and instruction.

    Comment by Kati Mercier | December 30, 2010 | Reply

    • Thanks for great comment.
      There is some supplimental information, like the next step in structure functionality, at the new site.
      Do a search at

      Comment by John Evans | January 12, 2011 | Reply

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: