Trimble Business Center — Produce final deliverables in one workspace. Start free trial.

AI Assistant
Notifications
Clear all

[Solved] Civil 3D automation (.NET API): Looking for ideas for my next hobby project

23 Posts
7 Users
1 Reactions
3,478 Views
Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Hi everyone,

Unlike many, I actually enjoy working with Civil 3D. I’ve been diving deep into the .NET API (C#) as a hobby for a while now.

My background is mostly in Road Construction, and I’ve already automated most of my daily routine in that area. Now I’m looking to sharpen my coding skills further, but I’m running low on new ideas.

So I’m turning to the community for inspiration:

What drafting or calculation task in Civil 3D takes up way too much of your time?

I am looking for interesting problems to solve.

If you have a task that feels like it "should be automatic" but isn't, let me know.

Thanks!


 
Posted : December 10, 2025 9:51 pm
tickmagnet
(@tickmagnet)
Posts: 181
Free
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

How about an auto line label switch. 

When on, every line and curve  drawn would automatically have a label applied.

I would use it to do a quick check for typos as I work through the paper calcs on a deed or map.

ps..compatible with c3d 2016 (That's what I use)


 
Posted : December 11, 2025 8:18 am
1
Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Great idea, I'll get on it)


 
Posted : December 11, 2025 8:08 pm
jaccen
(@jaccen)
Posts: 461
Free
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Unit conversion. It would be nice to be able enter in whatever unit you wanted no matter the template. Ie. if I use the metric template, it would still be nice to offset one side of the road 66' by typing " OFFSET 66' " instead of " OFFSET 20.117". Some of the commands you can do this; some of them you cannot unless you use a LSP. Vara, rods, chains, etc. would be handy for many.


 
Posted : December 12, 2025 3:20 pm
john-putnam
(@john-putnam)
Posts: 2466
Member Founder, Sustainer
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

How about the ability to label or inverse showing both grid and ground distances when used in conjunction with project C.F.


 
Posted : December 12, 2025 5:00 pm

GaryG
(@gary_g)
Posts: 976
Member
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@john-putnam 

This is built into to TraversePC.


 
Posted : December 12, 2025 5:56 pm
Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

Is the first option ready for you?


 
Posted : December 13, 2025 1:38 am
Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@jaccen 
Are you only interested in one command - offset? or move and copy? is this like creating a transparent command or just switching parameters before using the command? And what units of measurement would you like to add?


 
Posted : December 13, 2025 1:46 am
Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@tickmagnet Have I solved your problem?


This post was modified 10 months ago by Andrei
 
Posted : December 15, 2025 3:57 am
tickmagnet
(@tickmagnet)
Posts: 181
Free
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@andrei No, I'm looking for lines labeled with a bearing and distance.


 
Posted : December 15, 2025 12:30 pm

Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@tickmagnet OK, I'll finalize it.


 
Posted : December 15, 2025 10:23 pm
Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@tickmagnet like that?


 
Posted : December 16, 2025 3:47 am
lurker
(@lurker)
Posts: 1172
Member Founder
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

While 51.18 might be the correct distance, you will never have a bearing that is over 90 degrees.


 
Posted : December 16, 2025 7:41 am
jaccen
(@jaccen)
Posts: 461
Free
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@lurker 

 

I know that BC surveyors use azimuth, but that seems to be the minority in North America.


 
Posted : December 16, 2025 12:23 pm
jaccen
(@jaccen)
Posts: 461
Free
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@andrei 

Hi there. OFFSET is the main one for me. I use two LISPs for drawing bearings & distances that largely take care of my problem of drawing up older plans that reference international feet. We do not, typically, reference survey feet up in Canuckistan so that is not really a problem for me (though, I imagine it may be something wanted by my other North American friends). The only annoying bits with the LISPs are the following:

1. It doesn't remember the last bearing (ie. if you are calc'ing down a street, you have to retype the last bearing even if it is exactly the same--higher chance of a blunder this way IMO)

2. It doesn't allow command "stacking" (ie. instead of specifying Quadrant?: 1, RETURN, Bearing?: 45.3455, RETURN, Distance?: 100.341, RETURN

 

It would be nice to be able to type:

Quadrant, Bearing, Distance?: 145.3455 100.341, RETURN

and then

200.346, RETURN

 

where it would "remember" the last bearing. You would only type in another bearing if you wanted to change, well, your bearing. If you tackle any of that, please let me know and we can work out something.

 


 
Posted : December 16, 2025 12:34 pm

Norman_Oklahoma
(@norman-oklahoma)
Posts: 8474
Member P&R, Founder
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

I would like a function that reprojects drawings and other geospatial products to different systems. ie/ Typically I have base mapping in the Oregon Coordinate Reference System (an LDP of NAD83) and aerial photo product in State Plane which I'd like to insert.

There are functions for this sort of thing in AutoCAD Map, which is included in C3d, but they are tough to use and don't do exactly what I want done.     


 
Posted : December 17, 2025 11:19 am
Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@lurker  like that?

 


 
Posted : December 19, 2025 9:17 pm
Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@jaccen It seems to me that it is better to import from excel with the starting point specified in autocad, that is, from which point the lines will be drawn, based on the degree measure and the distances that are recorded in the Excel table. For example, one column contains the directions of the compass, and another column contains the degree measure. This would be the first type of import, and the second type would be if the degree measure was not divided into four parts and had 360 degrees.


 
Posted : December 19, 2025 9:24 pm
Andrei
(@andrei)
Posts: 12
Free
Topic starter
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@norman-oklahoma I need more details and preferably an example, since I didn't do it, a drawing and nuances of the work)


 
Posted : December 19, 2025 9:26 pm
lurker
(@lurker)
Posts: 1172
Member Founder
Translate ▼
English
Spanish
French
German
Italian
Portuguese
Russian
Chinese
Japanese
Korean
Arabic
Hindi
Dutch
Polish
Turkish
Vietnamese
Thai
Swedish
Danish
Finnish
Norwegian
Czech
Hungarian
Romanian
Greek
Hebrew
Indonesian
Malay
Ukrainian
Bulgarian
Croatian
Slovak
Slovenian
Serbian
Lithuanian
Latvian
Estonian
 

@andrei That's the essence of it. Style wise bearings are usually written N 39-44-03 E instead of NE 39-44-03


 
Posted : December 19, 2025 9:34 pm

Page 1 / 2