How to: Label Coordinate in AutoCAD

I had this question several times: can we automatically label our coordinate in AutoCAD? If you are Civil3D user, then you most likely will suggest them to use C3D. But can AutoCAD actually do it? YES!

I saw many people use AutoLISP to do that task. It works great. But sometimes you may want to have your own labeling symbol and format. So, why not using field?


Creating a reference object

First, we need to create an object as a reference point. It can be a point, a circle, or any symbol you want it to appear. I use this symbol.

reference object

I prefer to use point or circle. We can easily use the point position or circle center.

Creating an Attribute Definition

After we have the reference object, we need to define an attribute definition. You can activate it by clicking it on your ribbon, home tab, block panel.

attdef

Or simply type ATTDEF then [enter].

Let’s define our attribute. Give the attribute tag, prompt like below. In default field, type ‘X Y = ‘ then click insert field.

define attribute

Change the field category to objects, and in field names, select object. Click select object button to define the object type. Select the circle, don’t select anything else!

field category

AutoCAD will list all available properties. Select center (or if you use point, select position). Because I only use it in 2D drawings, I don’t need it to display Z value. I turn it off. Change the format if necessary.Click OK.

define property

Click OK again to close the define attribute dialog box. Place your attribute definition in desired location.

Optional: Define Adjustable Leader

If you don’t want to have leader in your coordinate label, you can skip this step.

I add a line that will be used as leader.

leader line

Create the Block

Now we can define the block. Click create from ribbon, block panel.

create block

Select all the objects, and define the center as insertion point. Activate Open in Block Editor on lower left of this dialog. We are going to add some ‘dynamic’ functionality. Click OK.

AutoCAD will show the edit attribute dialog. We don’t want to modify it as it is updated automatically. Just click OK.

Add the Control Grip

What we want to do is adding a grip control, so we can modify the text (and optionally leader) placement. In block authoring palette, activate the point parameter.

point parameter

Now place it where you want the grip appear.

point parameter placement

Now activate the stretch action.

Select the point parameter, create the stretch frame like below, and select the line and attribute definition. [Enter] to end it.

cross polygon

Now we are done! Save this block and close block editor.

Using the Label

How we can use the label? Just insert the block, and click on the point you want to show the coordinate. After you have one of the block in your drawing, you can copy it and place it on several points you wanted.

Because we add a control grip, we can move the text and leader position!

control grip

Because we use field, if you move your points, the value will be automatically updated! Very cool, isn’t it?

Why Attribute Definition? Why not Just Use Text?

You might ask this: why not just use text with field? I know we can insert field within text, single or multiline. But it doesn’t work. You may want to try it by yourself.

Apparently the field will consider the reference point always at 0,0,0 when you create a block. It works if you don’t create a block from them, but I believe you want to use it as reusable content, aren’t you?

Comments

    Leave a Reply

    Your email address will not be published. Required fields are marked *

  1. Suitaloon says

    Hi
    I have a set of blocks, defined like you did, with a text attribute indicating a z value for each of the block (the base geometry is a point).
    Is there a way I could globaly set these points at the Z position indicated in the attribute field of each one of them?
    Thanks for your help and attention

    Suit

  2. jamie says

    When i copy and move the block the coordinates stay as the original, is there a way to make these update as the block is moved / relocated?

Trackbacks