9x faster Tab Switching in Civil 3d 2024 – NO!

I did this post last week where I tested the claim of up to 9x faster tab switching with AutoCAD 2024. My thought is this would be great for my Civil 3d users who use a lot of tabs. Faster is always better, right?

Unfortunately this speed increase did not transfer from AutoCAD 2024 to Civil 3d 2024. I suspect this has to do with the fact that Civil 3d regenerates object very differently than straight AutoCAD.

The good news is Civil 3d 2024 managed to do this about 11% faster over 5 trials with Civil 3d 2024 always coming out faster than the 2022 version.

I also tested to see if this speed increase in tab switching also applies to publishing the same 50 sheet drawing set. Unfortunately, the answer is no to that (even in AutoCAD). I suspect whatever change was made to speed up tab switching was not applied to the publishing code.

Here is a video of one of the runs.

CAD -> Google Street View

Google street view is a very powerful resource for engineers. Often times it takes some fiddling to find the exact point you want in street view.

I wrote some code to help with the process. What this code does is take the Northing and Easting in your Civil 3d drawing and convert it to Lattitude & Longitude. In order for it to do this you have to have a coordinate zone assigned to your drawing in the Civil 3d Units & Zone Tab. I demonstrate this in the video, but you can also access it by typing in EDITDRAWINGSETTINGS.

Check out the video below, and the code at the bottom of the page. Thanks!

; Written by Brian Strandberg, c3dk.com
; email: hello@c3dk.com
; Transforms coordinates from the X & Y in your drawing
; to Lattitude & Longitude
; then opens google street view at that point.
; code is not fully debugged
; requires a coordinate zone is assigned to your drawing.

(defun c:gsv (/)
(command "UCS" "World")
(if (not (getvar "CGOECS"))()(alert "fail - set coordinate zone first"))
(setq pkpt (getpoint "Select Point to see in Street View"))
(ade_projsetsrc (getvar "CGEOCS"))
(ade_projsetdest "LL84")
(setq cvp (list (car pkpt) (cadr pkpt)))
(setq result (ade_projptforward CVP))
(if (null result)
(alert "\nError in Transformation "))

(setq gsv (strcat "http://maps.google.com/maps?q=&layer=c&cbll=" (rtos (cadr result) 2 8) "," (rtos (car result) 2 8)))

(command "UCS" "P")
(command "browser" gsv)


); close defun

Simplify your CAD Standards Translation using LAYTRANS and Scripts.

Translating your drawing from one CAD Standard to another – fast.

Data management is huge deal when working with AutoCAD and Civil 3d. In this case, I am working on translating our Survey Team’s CAD Layers to a large City’s CAD Layers. We want this to run as a script so it is very easy for our team members to run the process.

I start this process with a planning step first. This sounds pretty boring, but it is essential work. I want to know exactly what needs to be done before I start doing it. Then I will encode this into a script and the LAYTRANS command.

Step 1) I start a new drawing with our survey template, and type in LAYER. Select a layer from the list, then key in CTRL + A. Now that all layers are selected, press CTRL + C to copy the layers.

Step 2) Start a new excel file and paste the layers you previously copied. Now you have a nice listing of all your layers. Now it’s time to go line-by-line and determine what each layer needs to be translated to. You may find you just want to delete some layers.

Step 3) Now that I know I’m going to do with each layer, I need to start working in CAD to achieve the desired effect. We will be doing this with many drawings over time, so I want the result to be scripted as much as possible. That way the survey team can just run the script and check the output.

I have identified a large number of layers which won’t have anything on them for this type of survey. They are usually used for staking drawings. I will remove these layers. I’m also going to purge unused blocks.

Here I have started writing my script. I usually write these as a series of lisp statements. In this case below, I am purging blocks and then deleting a layer from our template that will not be used in this type of survey.

Now its time to setup the translation matrix with the LAYTRANS command. This is straightforward, you go through each layer on the left (current drawing), vs the panel on the right which is the one you are translating to.

You can see in the bottom pane what the translation will do. Old Layer Name – New Layer Name and what that layer will look like. Don’t forget to save while configuring this! If you accidently exit, ya gotta start over. So, you need to plan so you can do this in one shot.

Make time to check out the settings. If you look at the first 4 shown below, its giving you the option to do a SETBYLAYER command right in the layer translator. A nice feature!


Now that we have created and saved our translation matrix, its time to add two more lines to our script.

What is (acet-laytrans) ? This is a lisp statement to run your translation. You can of course, bring up your translation normally with the LAYTRANS command, but this allows us to script the whole process. Sweet and fast. We must precede this with the statement (arxload “Laytrans”) to ensure the laytrans functions are loaded in CAD.

We embedded a link to this script in our menu system. Check out the results below.