Bringing Shape File text into Civil 3d

Bringing Shape File text into Civil 3d

Anonymous
Not applicable
16,370 Views
38 Replies
Message 1 of 39

Bringing Shape File text into Civil 3d

Anonymous
Not applicable

I have a large shape file with thousands of streets and street names that I want to bring into Civil 3d.  The line work comes in with no problem but I can't get the text to come in. I have the .shp, .dbf, and xml document files.

Can anyone help?

0 Likes
Accepted solutions (1)
16,371 Views
38 Replies
Replies (38)
Message 2 of 39

Alfred.NESWADBA
Consultant
Consultant

Hi,

 

do you use _MAPIMPORT or _MAPCONNECT to get the SHP-content displayed?

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2026
------------------------------------------------------------------------------------

(not an Autodesk consultant)
0 Likes
Message 3 of 39

Anonymous
Not applicable

_MAPIMPORT

0 Likes
Message 4 of 39

Alfred.NESWADBA
Consultant
Consultant

Hi,

 

_MAPIMPORT imports the geometry, as you have lines you get the lines imported. The attributive data can be stored as Map object data, but it's not that easy to create now the labeling.

 

It's more easy using _MAPCONNECT, it can handle more geometry with better performance, has advantages with stylization as well as labeling (>>>more details<<<).

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2026
------------------------------------------------------------------------------------

(not an Autodesk consultant)
0 Likes
Message 5 of 39

Anonymous
Not applicable

I tried that, the line work comes in but I still don't see any text.

0 Likes
Message 6 of 39

Alfred.NESWADBA
Consultant
Consultant

Hi,

 

>> the line work comes in but I still don't see any text

Did you follow the tutorials from the link I showed in my previous post?

You need to change the style to display the label ... define to turn labeling on, which font, which size, which data you want to have displayed, that needs to be defined, Civil 3D can't know all that!

 

20181029_163114.png

 

- alfred -

------------------------------------------------------------------------------------
Alfred NESWADBA
ISH-Solutions GmbH / Ingenieur Studio HOLLAUS
www.ish-solutions.at ... blog.ish-solutions.at ... LinkedIn ... CDay 2026
------------------------------------------------------------------------------------

(not an Autodesk consultant)
0 Likes
Message 7 of 39

albionpjl
Collaborator
Collaborator

It's do-able using mapimport.

_mapimport

 

select the shp file that contains your text.

In the window where you select coordinate system and set layernames for the import, click in the data field, in the attribute data window that pops up, click on create attribute data, then on select fields. Make sure that one of those fields is the one that contains the text string info.
Click OK.
Now click on the little button at the right side of the points field.
In the Point mapping popup, select create as text from data. Then select the datafield that contains the text string info.
Click OK.
Now click on OK to import the data.
The points come in as Mtext lables.


Message 8 of 39

albionpjl
Collaborator
Collaborator

One additional bit of info, sometimes, if the data file names are very long and/or contain odd characters (I've never bothered to narrow down which exactly causes the issue), when you try to select the fields for attribute data, nothing will show.
If that happens, abort the command, find your shape files in explorer and rename all of them with shorter names. I get this bug a lot because someone in a certain records office just loves to create files with names like sitenamestreetnametownnamemonuments-points-todaysdate. I usually just rename them mons.

0 Likes
Message 9 of 39

Pointdump
Consultant
Consultant

Mike,

To add to excellent advice here, when you use _MAPIMPORT you can label using a Map Annotation Template. Thusly:

 

Dave

 

 

Dave Stoll
Las Vegas, Nevada

EESignature

64GB DDR4 2400MHz ECC SoDIMM / 1TB SSD
NVIDIA Quadro P5000 16GB
Windows 10 Pro 64 / Civil 3D 2025
Message 10 of 39

albionpjl
Collaborator
Collaborator

I set up some custom buttons on a toolbar to label that way because I also need labels from the data with shp polygons as well as from point data.

And it was probably Pointdump who showed me how to do that.

Message 11 of 39

Pointdump
Consultant
Consultant
Accepted solution

Mike,

>>>Here<<< is a hybrid solution using both _MAPIMPORT and _MAPCONNECT.

And >>>Here<<< is yet another really clever way.

Dave

Dave Stoll
Las Vegas, Nevada

EESignature

64GB DDR4 2400MHz ECC SoDIMM / 1TB SSD
NVIDIA Quadro P5000 16GB
Windows 10 Pro 64 / Civil 3D 2025
Message 12 of 39

Anonymous
Not applicable

Thanks everyone for all your great answers so far. The videos have been particularly helpful. I am oh so close, possibly one elusive step from success.

I've been able to bring in text for all the streets but it all says "TEXT LABEL" instead of the actual street name.

Other projects have forced me to sort of put this one on the back burner but I still need to get through this final step.

0 Likes
Message 13 of 39

albionpjl
Collaborator
Collaborator

Which method did you use to bring in the text? Are you importing directly from the data or setting up an annotation template?

 

 

0 Likes
Message 14 of 39

Anonymous
Not applicable

I followed the second video supplied by Pointdump to access object data through the map task pane.  At about the 20-25 second mark I couldn't get the options on my screen to look like his anymore.

0 Likes
Message 15 of 39

albionpjl
Collaborator
Collaborator
Ah. The complicated way. I could never get anything on the map task pane to actually do anything. I always import straight from data or use the annotation template.
I'll have to leave this one for Pointdump.
0 Likes
Message 16 of 39

albionpjl
Collaborator
Collaborator
Having said that, I just did it.
If you're seeing the words text lable, it's because you didn't tell it the field to use. Which options were missing?
I need to bookmark that video, it may prove very useful
0 Likes
Message 17 of 39

Anonymous
Not applicable

I'll try again but if that's the complicated way, whats the simple way?

0 Likes
Message 18 of 39

albionpjl
Collaborator
Collaborator

I suppose the way you're used to always seems simpler, but now that I've tried it and got it to work, the task pane method is about the same level of complexity, except for having to gooogle the command to turn the task pane on in the first place.

My way is the annotation template method but you have to have imported points or objects from your data already.

I set up some buttons on a custom toolbar for it.
Command   _mapanntemplate
click on new in the box that opens.
Type a name (I just call it labels) and OK.
This opens the block editor.
Command   _mapanntext
press enter to create a new annotation

In the tag box type a short name for your label command. eg streets
Click on the button just to the right of the value field.
in the box that opens expand object data. You should see your databases listed.
Expand the one that has your street names and select the one that contains the information.
Select your font, size, and layer for the label.
Click ok,
Click ok,
Close block editor, saving the changes.
Click ok in the last box (should be the define annotation template box.)

Command  _ mapanninsert
select the template you created click insert, then select the objects that are to be labelled and hit ok.
If you need the labels to be text, use burst on them and not explode.

Yeah, you're right: Pointdump's method with the maptaskpane is probably simpler. I may have to add a button to bring up the task pane.

 

0 Likes
Message 19 of 39

Pointdump
Consultant
Consultant

Mike,

"At about the 20-25 second mark I couldn't get the options on my screen to look like his..."

Can you post a screen shot of what you see? Also, please post your data. (Zip together the SHP, PRJ, DBF, and SHX files.)

Oh, and >>>That Video<<< is from the estimable @ChicagoLooper. Maybe CL can chime in.

Dave

Dave Stoll
Las Vegas, Nevada

EESignature

64GB DDR4 2400MHz ECC SoDIMM / 1TB SSD
NVIDIA Quadro P5000 16GB
Windows 10 Pro 64 / Civil 3D 2025
Message 20 of 39

ChicagoLooper
Mentor
Mentor

To @muncle56

 

If you have shp, dbf, shx and prj files you can use MAPIMPORT to bring in the shapefile as AutoCAD entities, not as feature objects through an FDO connection. The command, as you already know, converts the shapefile into Cad line work. It sounds as though you've already used MAPIMPORT and have successfully brought in the line work. If you have also brought in the shapefile's attribute data during the MAPIMPORT procedure to accompany the cad line work, then you are halfway to your goal because you have object data. The remaining half is to use the OD to label the streets.

 

Once you have successfully brought in the OD, there are different ways to use it as well as to access it. In your case, you want to label the streets with their respective names. This type of labeling is a little tricky because each label's rotation will vary from street-to-street with the text angle tied directly to the street's line work. It's one thing to pull out the OD and create mtext but it's another thing to get the mtext to rotate according to each street's orientation. 

 

To pull out the OD and use it as a source to label your streets, you can follow this >>video<< (the same video posted by the venerable @Pointdump) If you do it successfully your labels will not only appear, but they'll also be rotated correctly.

 

 

 

Chicagolooper

EESignature