Tapping Into Civil 3D

Wednesday, May 14, 2008

Match Maker

So I was playing around in C3D '09 and stumbled upon something pretty sweet. Match Properties now works on object styles! No special command needed, just click on the paint brush or type in MA at the command line and use like normal!

Selected northern alignment first...


Southern alignment now matches.


I have not had any luck getting label styles to match, but I'll be looking forward to that feature in future releases.

Tuesday, March 06, 2007

Natural Ground! Report!

Nothing to report Sir!!

That is what you'll notice too when you try and run the Profile-Incremental Stationing Report.

The VBA report is supposed to have the ability to list "PVI stations and elevations of the selected existing or finished ground profile at regular intervals, at critical geometry points, and crest and sag curve points." However, any profile created from a surface does not show up in the list of profiles in the drawing.



Proof that there are profiles in the drawing.


Come to find out the VBA routine only works on finished ground profiles, contrary to what the dialog box tells us. So we need to figure out how to get a FG profile to match our existing ground profile, with out tracing ;-)

It's actually pretty simple.
Step 1.) Create an assembly and add a marked point to it.


Step 2.) Create a corridor; use the alignment that the surface profile was created from as the baseline, use the surface profile as the profile, and use the simple assembly from step one. Your frequency really shouldn't matter so long as you have the option "At Profile Geometry Points" on.


Step 3.) Now that you have your corridor built...


Extract a profile from the corridor

C3D will prompt you to select a feature line; this should be easy since there is only one! After picking on the lone feature line, give the new profile an appropriate name and style.


After clicking OK, you can go to your profile view and verify that the new profile exactly matches the original.


Now, go back and run the report and you should see the extracted profile ready to have a report run on it.


-Enjoy!!

p.s. Looking ahead to '08, the same procedure will be necessary.

Wednesday, November 08, 2006

Right Click, Transparency

Scott and I were at a local surveying firm today showing the ins and outs of C3D to some new users. Obviously, being a survey firm, they would need to know how to draw a line by direction so we showed them the "Bearing Distance" button on the transparent command toolbar. One of the users then asked, "Can I get to that with a right click?" Makes sense...almost everything else can be accessed through a right click. However, out-of-the-box c3D does not allow you to access the transparent commands with a right click. But, just because it doesn't come OOTB, doesn't mean we can't add it in!

Type CUI at the command line to bring up the Customize User Interface. Expand Shortcut Menus and locate "Context menu for command mode"


Once you've located the menu, right click and add a sub menu.


In the lower left corner of the CUI dialog box there is a section call "Command List:" this is where we will locate the commands to drag into our new sub-menu. In order to help find the commands, sort the commands by Source. After sorting, scroll down until you find "Angle Distance", this will be the beginning of the transparent command list. Now just left pick on a command and drag it under the new sub-menu. Add as many or few commands as you like.


When your all done, you should have something that looks like this.



-Enjoy!

Monday, November 06, 2006

Not Everything Flows Downhill!

Water Lines, Gas Lines, Electrical Conduit and everything else that doesn't have to flow down hill can be a bit tricky to show using pipes in C3D. That doesn't mean it's not possible though. Follow along to see how.

I start out by drawing a polyline across my surface. This represents the centerline alignment of my water line.


Turn the polyline into a feature line.

I like to keep my drawings organized so I choose to create an "H20-1" site to place the feature line in. Style is not important and erasing the existing entities will not affect the end result.


Project the feature line to the Surface.


Notice now that we have quite a few vertices in our feature line, in fact, too many! We need to "weed" out some of those vertices to prevent our pipe network from being a bunch of little pipe segments. To accomplish this, we will use the "Weed vertices" button on our feature line tool bar. I choose to set the criteria to %0.60, you may find that a different percentage or a combination of angle and distance yields a better result for your situation.


Select the Feature line, right click, and go to the elevation editor. This is where you will use the Lower Incrementally button to set the depth of your water line. In my case, 4' below natural ground.*

*The feature line will define the center of the pipe. So, since I lowered my feature line 4' and I am building a 12" water line, I will have 3 1/2' of cover.


The next step is to create a parts list from which our network will be created. On the pipes tab add waterever pipe material and size of pipe that suits your design need. If you can't find the material you like, look here. On the structures tab DO NOT add any structures. Simply modify the style and the rules being used.


The rules being applied to the pipes and structures are key in this process. Here is how they should be set up.

Pipes:

No, there is no mistake here. I've actual created a rule set that has no rules.

Structures:


Before we turn our feature line into a pipe network we need to edit our "CreateNetworkFromObject" command setting.


There are three setting that need to be adjusted:
Default parts List, Pipe Default Rules, Structure Default Rules



With the settings set...we can now turn our feature line into a pipenetwork


After selecting the feature line the below dialog box will show up. Notice that the option to choose a structure has been grayed out. Also be sure NOT to select a surface and make sure "Use vertex elevations" is NOT checked.


At first glance, it appears that we have now placed structures at all the remaining vertices....


But, as we roll the model up into 3-D, we see that indeed, no structures were placed in our network


At this point we have completed laying out our network, but we still need to get it into a profile. And what's the first step of creating a profile? Well, we need an alignment, so let's create an alignment from network parts.


Choose the first "structure", then the last "structure", and then hit enter to confirm the selection.

Well organized sites and thought out names for objects and styles make it easy to breeze through dialog boxes like this. Make sure to check "Create profile and profile view"

Add the Natural ground surface, and then draw it in a profile view.


Adjust the profile view to your liking.


Place the profile view somewhere in your drawing and you should have something that looks like this!



The final step is to clean up the plan view. Browse to the structures of the H20-1 network in the prospector. In the preview pane select all the structures, move your cursor to the heading of the styles column, right click and select edit. Select and more appropriate style, one that does not use a block in plan or profile view.


Looking back at the plan view you can see that everything looks as expected.


Look for some upcoming posts as we take this waterline profile a little closer towards a construction document.

Wednesday, September 13, 2006

It's OK to be Materialistic

Reinforced Concrete
Corrugated Steel
ABS Plastic
Ductile Iron
PVC

The above are the materials that C3D gives you to describe the pipes inside your pipe network. However, as most of you already know, in the real world we use a much wider variety of materials in our projects.

Current workarounds to having your labels display properly, even though the actual material of the pipe is incorrect:

1.) Edit the description of the pipe inside of your part list.

Then you can simply pull the description component inside your your label.

2.) Hard code, or type in a piece of text inside your label.

Both of the above ways are not linked to the pipe model. So if the material or pipe size where to somehow change, said change would not be reflected in the label.

So how can you add more materials to your current list and have them update dynamically. Easy...just type in a new material!!! That's it!

The below process also steps you through how to create a new part family to better organize your new materials.

Step 1. Launch partbulder. Type it in or select it from the pipes pull down menu

Step 2. Select an existing part family to modify.


Step 3. Save part family as..

Step 4. Rename the new family

Step 5. Edit the calculations

Step 6. Notice the name that is being used in the PrtSN (Part Size Name) Column.


Double click on one of the cells under the PrtSN column to bring up the Calculation Assistant. Here you can edit the name from PVC to whatever, in this case HDPE.

End result:


Step 7. Validate and save the part family


Step 8. Create a new parts list and add a family.


Step 9. Choose the freshly created part family.


Step 10. Add a part size


Step 11. Now we should be at a dialog box that looks familiar to everyone. This is where we choose our part size and it's also where we make sure our parts are going to referencing the correct material (See Dana's blog here). But what if we want to use a material other than the five listed...no problem, just click inside the cell and type in a new pipe material.

After choosing your pipe size(s), OK out of the dialog box.

End result:


So what does this mean? I no longer have to pull the description of my pipe in my label (which isn't even possible when dealing with a pipe band), instead I can pull the Dia. and Material and achieve the same result. Except this time, the label is dynamic to part size and material.


Final Product:



-Enjoy

p.s. So yeah, I know it's been a while since I posted. I will try to post a little more regularly from now on to make it worth people's time to check out my posts.

Monday, June 26, 2006

Adding LDT commands in C3D

If you have visited the discussions groups at all, you've heard that complaint/comment more than once. Well, there is simply no way to bring forward those commands. However, one can easily transfer over the toolbars and drop down menus from LDT into C3D. Once there, a quick modification of the macro inside of the CUI will have your menus and toolbars looking like LDT and working with the power of C3D. Follow along to see how.

As an example I've chosen the "Terrain: Edit Surface" toolbar. Why? Because almost every button on this toolbar has an equivalent command in C3D. Not every toolbar or pull down menu will work as nice, but if some of these basic commands can be brought over, it just might be that crutch that some of the more "hardened" end users need to make the transition.

Start by firing up LDT and going to the CUI. Click on the transfer tab. On the right hand side open up the civil.cui located in ?:\Documents and Settings\USERNAME\Application Data\Autodesk\C3D 2007\enu\Support. Once the civil.cui file is open its a matter of drag and drop from one cui (land) to the other (civil).



Now that we have the toolbar transferred from LDT to C3D, we can close down LDT and open up the CUI in C3D. Once in the CUI, browse in the toolbars until you find the "Terrain: Edit Surface" toolbar and expand it. By clicking on one of the commands under the toolbar you will populate the properties display pane. Here you will see the various fields we will need to edit.


The first button on the toolbar is "Import 3D lines". In LDT, it was necessary for one to import the 3d lines prior to editing the surface. In C3D it is only necessary for the current surface style to be displaying the triangles and/or points. I have chosen to populate this button with the EditSurfaceStyle command. This will allow the user to quickly access the surface style dialog box and turn on the triangles. EditSurfaceProperties would also be an acceptable command, so long as a surface style for editing has already been created. Wondering where I'm coming up will all these commands? Open up help and type in "Surfaces Command Reference", you will be given a result that contains a majority of the surface commands in C3D.

To edit the macro click on the contents of the macro in the display pane, then click on the ellipse.

Which will bring up the Long String Editor Dialog Box


The macro should be composed as:

Notice how I've renamed the button and changed it's description.

The only thing we are missing now are the icon .BMPs. This is easier said than done, since all the .bmps are contained in a .dll instead of "free floating" .bmps like in years past. That's where Resource HackerTM comes into play. " Resource HackerTM is a freeware utility to view, modify, rename, add, delete and extract resources in 32bit Windows executables and resource files (*.res)." What that means to us, is the ability to extract all the nested bmps out of the .dll for use in our new toolbar and upcoming drop-down menu.

After downloading and extracting Resource HackerTM, start the program and open up the land.dll. You can find it here, ?:\Documents and Settings\USERNAME\Application Data\Autodesk\Autodesk Land Desktop 2007\R17.0\enu\Support. If your worried about messing up LDT, just make a copy for your use on the desktop. Once the file is open go to the Action drop down menu and Save All resources...


Choose a destination folder for all the soon-to-be extracted .bmps and the ".rc" file. Upon browsing to the chosen folder, you will find ~ 1630 bitmaps. They will be named "bitmap_1.bmp, bitmap_2.bmp, bitmap_3.bmp, etc." Decoding all these bitmaps is what the .rc file is for. Open up the .rc file with notpad and you will see something like this...


If we go back to the CUI, we can see which icons we are looking for. In this case "tred3dl" for the small image, "tred3dl2" for the large image. A quick search inside the notepad document will help you locate the various images. "tred3dl" happens to be "Bitmap_570.bmp". Edit the "Bitmap_570.bmp" file and rename it"tred3dl.bmp". You will need to repeat this process for every icon on the toolbar...I never said it was going to be fun or easy ;-)

After renaming the bmp, you will need to remap the icon location thru the cui. To keep things well organized, put all the renamed .bmps in the Icons folder located ?:\Documents and Settings\USERNAME\Application Data\Autodesk\C3D 2007\enu\Support\Icons


At this point, we have completed the process for the first button on the "Terrain: Edit Surface" toolbar. You will need to repeat this process for the remainder of the buttons.

Here is the list of macros I used to finish up the transfer:

Add Surface Line...........................^c^c^cAddSurfaceLine

Delete Surface Line......................^c^c^cDeleteSurfaceLine

Flip Face.........................................^c^c^cEditSurfaceSwapEdge

Add Surface Point.........................^c^c^cAddSurfacePoint

Delete Surface Point......................^c^c^cDeleteSurfacePoint

Edit Surface Point..........................^c^c^cEditSurfacePoint

Add Breaklines...............................^c^c^cAddSurfaceBreaklines
(^org. name of Nondestructive Breaklines)

Minimize Flat Surface Faces........^c^c^cMinimizeSurfaceFlatAreas

Raise/Lower Surface.....................^c^c^cRaiseLowerSurface

Paste Surface..................................^c^c^cEditSurfacePaste

Surface Boundaries.........................^c^c^cAddSurfaceBoundaries

And when everything is said and done...


Enjoy!

As always, comments are welcome.

Wednesday, June 14, 2006

Critical Labels

Picking up were I left off yesterday, let's label all these critical points. Before I do though, I'd like to thank Angel for posting about my new blog. Thanks!

Labeling Critical Points
None of the out of the box labels really work the way I would like them to, but that doesn't mean that AutoDesk didn't provided the tools to make a label like I want!

Let's start by making some new expressions. No, it's not a mistake, I am making the expressions under the Depth label category, even though I will eventually be labeling a station and elevation. Why? Because I like the look and feel of the depth label, it just doesn't label what I want it to...out of the box.


Two expressions need to be created. One for the station of the selected point and one for the elevation of said point. Pay close attention to the format that the results will displayed as. Now is a good time to extend your cad standards and naming convention to expressions.

Station Expression:


Elevation Expression:


Now that we have the expressions built, let's combine then into a label that we can use.

First, create a new label:


Now, let's format the label to take advantage of the new expressions:


After creating the new label style, it's time to label the critical points on our subject profile.
Profiles>Add Profile View Labels...

Now select the newly composed label:


Adding the labels to the profile view is a breeze now that we have nodes to snap to (if you don't remember putting nodes on the profile, re-read yesterday's post). Simply snap onto the node of the various points and drag in the direction you want the label.


As a final cleanup, change the marker style of the "CR" point group to "none"


Now we have labeled all the curb returns, intersections, and any other critical stations without offseting or drawing any line in our profile view. Also, there was no need to label a single critical station in plan view for future reference!

Enjoy!

Tuesday, June 13, 2006

Marking Critical Points

Currently in C3D there is no way to label the elevation of a profile by simply selecting a station or keying one in. Instead, you must enter in both the station and the elevation in order for the station and elevation label to work. This becomes even more problematic, as osnaps like intersection to not work on a profile. So, that leaves you with a couple of options; 1.) trace over the FG profile with a line or polyline, 2.) copy the profile and explode it twice. I'm sure that there are other ways to label the finished ground at a specific station; VBA comes to mind, but nothing really "out of the box".

Here in Texas our roads are parabolic and we design off the top of curb, so this step-by-step guide might need to be tweaked for the roads in your region.

This will be a 2 part write up. Today's guide is a walk-thru in marking critical points in your profile view.


Marking The Profile

Start with laying out your finished ground profile












Next, create the assembly of your liking. Notice how I have left the curb subassembly in the assembly that is used to model the intersection. This can be removed later for final modeling, but must remain present for the time being.











Create a corridor from the FG profile and assemblies, but make sure you create a surface from the curb link.










It is probally a good idea to throw a boundary on the surface too.









Next, we will add points to the profile view to mark the various critical points. I went ahead and created a point group called "CR" (curb return/critical points) and assigned the point group a marker style consisting of a custom marker, a line in this case.

Points>Create points>Miscellaneous:manual


Place points with the transparent command: Profile Station and Elevation from Plan



After selecting the transparent command you will be prompted to select a profile view. Select the subject profile view. Next, C3D will want to know what surface to pull elevations from. This is where you will select the corridor surface composed of the curb links. Finally, C3D will prompt you to select a point. This is where you can select every curb return, intersection, or critical station along the corridor alignment. No need to "pre-label" the critical stations inorder to manually key them in.


Next, update the point group, CR in this Case.


After updating, you will notice that your profile view has been marked with points at the critical stations you have choosen and they are at the correct elevation!!


Enjoy!!

p.s. Being as this is my first attempt at a blog or a write up, any and all comments and suggestions are welcome.