Update: Sample drawing added at the end of the post, so get your hands dirty! – JW
Back in June at AEC DevDays, Nick Zeeben previewed a cool new subassembly that I immediately fell in love with. A cut/fill conditional sub-assembly which would do different things based upon different conditions. It has now been released to C3D subscription members.
- How do you install this cool new subassembly?
- What does it do and how will it help me?
Find out more after the jump.
How to Install
The subassembly is provided in a compressed file. To install the subassembly take the following steps:
- Extract the PKT file out
- Open C3D
- In C3D, in the Corridors menu pull-down select Utilities>Import Subassemblies…
- This will open the Import Subassemblies dialog box. Browse to the location of the PKT file.
- Select which palette to place this new subassembly on (I chose Generic since this subassembly does not belong to any current category.) and whether or not to add this subassembly to your catalog library (If you don’t know what a catalog library is or don’t use the Catalog, I would not worry about it).
You now have the Conditional Cut/Fill subassembly! Now what do you do with it why is it so great!!
Benefits of Conditional Cut/Fill Subassembly
This subassembly works very different than any other. It does not provide any points, links, or shapes. Rather it simply says yes use these assemblies that follow me or no ignore all the assemblies that follow me. How can that be helpful?
You can now create very unique parameters depending not only if you are in cut/fill but depending on how much cut/fill you are in at this point.
Let’s go with an example:
You are to fill at a slope of 4:1 along the edge of the road. Now if the fill is greater than 4 feet, then you are to apply a guardrail. However, since you are applying a guardrail, you are to provide additional graded shoulder to accommodate the guardrail. Yet, since you have a guardrail, you can apply a slope outside the guardrail of greater than 4:1 less than 2:1. Now, the project parameters say to apply a 2:1 slope only if you are greater than 8 feet of fill.
Whew! Those design constraints are not unusual and we are just dealing with the fill condition. In comes the conditional cut/fill subassembly to save the day!
You would create three conditional fill subassemblies:
To test the condition of whether your fill is less than 4 feet
You do this by setting the layout grade at 4:1 and the maximum distance at 16 feet (16/4 = 4). Now remember that this is just a condition. The subassembly does not daylight for you. Thus, at the end of the conditional subassembly add a Generic LinkSlopeToSurface subassembly. We can use the generic SlopeToSurface subassembly because the condition has already figured out if we are in cut/fill for us.
To test the condition of whether your fill is greater than 4 feet but less than 8 feet
You do this by setting the layout grade at 4:1, the minimum distance of 16 feet, and the maximum distance at 32 feet (32/4 = 8). From there we would add additional subassemblies for the shoulder, guardrail, and daylight.
To test the condition of whether your fill is greater than 8 feet
You do this by setting the layout grade at 4:1, the minimum distance of 32 feet, and the maximum distance at 9999.000’feet. From there we would add additional subassemblies for the shoulder, guardrail, and a 2:1 LinkSlopeToSurface subassembly
Do you get the idea? Better yet, have you started thinking of ALL the possibilities? Some points to remember:
- The subassembly outputs a condition at runtime. Thus there are no points, links, and shapes. How it looks at design time (the look of your assembly) is based upon the layout width.
- It will only add the subassemblies that follow it if the condition is YES.
No go create some interesting assemblies!
You can go to a sample drawing by clicking here.