What would you want a Civil BIM software product to perform? Well today my primary work is creating a preliminary grading plan for a tentative tract map. The project is for some condos with some challenging grading constraints. There are sidewalks, retaining walls, stairs, and landscaping areas. The buildings have retaining walls built into them. This is primarily to make them carriage units and provide the residents the feel of a traditional housing with an easy to access floor area. Carriage units are exempt from ADA requirements and are where the living space is above the garage area.
Most of the time when we get CAD drawings from other sources such as planners and architects. Tons of time an energy is spent correcting their often time sloppy linework. If Civil 3D was forgiving we could just use, but since feature lines close to each other may cause crashing it’s advisable to clean up the linework. For my project I’ve already spent 2 hours cleaning it up and probably have another 2 hours before I even start turning the polylines into feature lines. I then have to turn all of those feature lines into a design and offset them to get the desired shapes such as curbs, retaining walls, and stairs. It’s a ton of busy work that really provides a crappy user experience.
What if we could make the experience better? Well this is the way I’d envision Civil BIM working. First I’d be able to bring the architect’s linework into the program. I’d also have the actual legal linework in the drawing as well. As we all tend to know, architects tend to think of the world as square and the reality is often far off from it. So we are forced to fit their square design into a different shape.
Once in the program I’d be able to determine the constraints. In this case I know I need to tie into the existing sidewalk and curb and gutter at the south side of the project. I know from looking at the site I’m not going to be able to tie into the North, East, and West side due to the terrain without a retaining wall. If I was able to I’d shoot for a maximum of 2’ elevation difference so I wouldn’t have to design a retaining wall. Most areas in California allow a 2’ differential without calling the privacy wall a retaining wall. I’d want the ability to snap the privacy wall or privacy/retaining wall along the surveyor’s linework for the parcel. At this point it would follow the existing ground at the property line.
Next I’d want to create the sidewalk at the south of the property. This placement of the sidewalk would allow me to pick either the center of the sidewalk, an edge, or an offset from an existing feature. In this case I’d want the offset to be 7.5 from the existing curb and gutter. I’d then want to determine the elevation of this relative from the curb and gutter. In this case it would probably be a constant 2% grade since the buildings are separated from the sidewalk with a retaining wall. If the building was closer to the roadway then the grass landscape area would have a variable slope and the sidewalk would get it’s elevation from the building entrances. Of course the sidewalk would know about ADA requirements and would automagically insert ramp resting areas, if necessary. The ramp resting areas could then be moved and adjusted. The driveway would also be placed using parametric design based on the local design requirements. I’d expect no more bullshit of ignoring these often used features in civil design to ensure the grades are adequate to place the driveway and provide ADA passage.
I’d then want to place the other sidewalk on the project site. At this time I wouldn’t be concerned too much about elevation since I’m putting everything together. I think it would be too challenging to place and set elevations since I have no real idea where my constraints will show up in relation to the grading. The sidewalk would allow me to do both linear segments at a given width and the odd shapes in front of the buildings. I’d expect to be able to make my sidewalk too large or too long. When I place other objects such as retaining walls, stairs, or trash enclosure areas that it would automagically trim it’s self to those objects.
Next I’d place the buildings. Buildings can have retaining walls or stem walls associated with them. In my case as an architectural desire or for basements in colder regions. I’d then place the buildings on the site. The buildings would have a pad elevation (floor elevation minus any building materials to the floor elevation), a floor elevation, and the ability to slope the garage area to the entrance. This way I can move the building up and down and have my model adjust to it. On each side of the building I’d be able to set elevation points like we can do using the Civil 3D feature line tools. Find a high/low point to shed water away from the building or to get a retaining or stem wall as part of the building.
The building model, sidewalk model, and stairs would create a warped surface between the elements. The last element is curb, gutter, valley gutters, and pavement. I’d probably want to start out with a preliminary grading concept to build from. In looking at the site I’d want to determine how the water would flow through the site. For this site I’d think I’d go with something like shown in the image below.
I’d expect to be able to set the grade direction relative to a reference object, in this case the sidewalk at the front of the property. Then grade to the back of the property at 1% and up each of the alleys at 1%, and at the odd ball parking area at 1%. This pavement would automagically trim itself at the sidewalk and buildings or other objects. I now want to place the curb and gutter to constrain the pavement even more (or place it earlier) in the process. The pavement would automagically get it’s elevations from the building at the garage entrances to provide for a warped surface to a valley gutter that is going to have to be designed to flow water away from the garages.
The curb would be a smart curb object. It would know if it needed to be a curb or a curb and gutter and automagically change between the two as I grade the pavement. At this preliminary stage it would get it’s elevation from from the pavement projections. I’d also need to put in a valley gutter to direct the water away from the building. It would also automagically provide for the transition between curb and curb and gutter as well as the ability to go from one curb height to another over a distance of the length.
I’m now ready to set some grades. The surface would have the ability to show me the grades by shading. The sidewalk would have longitudinal and cross slopes to indicate areas that are out of compliance. In this case I’d add stairs to the model where it was too steep. In this case the architect has given me a general area to place them. The landscape area would also indicate steep slopes, close to steep slopes, and super flat areas by coloring. The sidewalk, valley gutter, curb and gutter, and stairs would have tools like the quick elevation editor in Civil 3D to allow me to set elevations. The sidewalk and pavement would have tools to allow me to add a grade break and either use the warped elevations to the existing model objects or project a grade way from it to adjust selected curb and gutter objects to adjust to them.
I’d also want to place the retaining walls where needed into the model. I’d expect to be able to tie it to the adjacent sidewalk and buildings either longitudinally or at the ends of them. I’d expect this retaining wall to be able to design itself parametrically based on minimum cover over the footing, footing step length based on the constructability. For a concrete wall this would be in increments of 4’ or 8’ to minimize the cutting of plywoood. For block walls it would be in increments of 16”. I’d be able to look at the wall in a profile type view and be able to adjust the footing dimensions and top of footing. This profile view would show the existing ground, the ground at the back of wall, the ground at face of wall. The ability to change the elevations would be provided. The retaining wall would use these elevations to then warp the surface around them.
The retaining wall object should also have the ability to calculate structural backfill, structural excavation, drainage material behind it, and construction tools. The construction tools would allow for the modeling of shoring, formwork, and other temporary construction methods to determine quantity of work needed to perform the work. Hundreds of millions of dollars of work are wasted coming up with these numbers. If you want more information on the process take a look at this research done at Stanford.
All of the above objects should have the ability to determine their own thicknesses and dimensions. This information should be used to calculate the amount of cut and fill earthwork for the site for a datum surface. This should also allow the ability to extract quantities. The quantities should also be able to be gotten by designating an area, such as Phase 1 or Phase 2. The phases should also allow the ability to do a partial design stage using the finished model to create it. For instance if I pick an area requiring fill, it would then grade to it.
All of the water on my site is going to either do surface flow to the pavement or small inlets and pipes to direct water to the pavement areas. In other projects would require the ability to create swales. The swales would have a minimum and maximum depths and the surface around it would warp to the other objects around it. The swale would allow for the quick elevation edit of the flow line as well as adjusting the depth along the swale to ensure drainage into the swale at an expectable grade that is neither to flat nor too steep. It would also allow me to set a grade from another object with elevation and then slope down to the swale and tie into it’s side slopes.
This project doesn’t have ADA parking, but it would also need it’s own tool to design to make sure the maximum slopes aren’t exceeded and tie into the adjacent pavement surfaces.
The final step would be the ability to create linework that can be shared in CAD programs. Each line of the model would have the ability to be extracted or not extracted. For instance the back of the curb, flowline, and lip could be extracted from the model; skipping the top of curb and bottom curb and gutter lines. The output I’d envision would be something similar to what Plant 3D does when it creates plan sheets. The ability to choose what lines to choose if there is multiple levels associated with the work.
In closing this workflow would save time by letting us design instead of doing busy work of making sure lines come together properly to prevent crashes and provide an intelligent model.