Categories

AutoCAD 2015 and AutoCAD LT 2015 Bible

The most comprehensive AutoCAD book around!

Extract data from objects in AutoCAD 2008 and later

One of the new features in AutoCAD 2008 is data extraction. This might make you think of block attributes and data connectivity, but it combines features of both. It’s both simple and powerful.

You start with the new DATAEXTRACTION command, or by starting the TABLE command and choosing the From Object Data in the Drawing (Data Extraction) option. Either way, the Data Extraction wizard opens.

Here are the basic steps:

  1. Choose to start a new extraction or modify an existing one
  2. Choose whether you want to include data from multiple drawings or just the current drawing. If you choose to extract data from multiple drawings, you can’t choose objects in those drawings. You can add drawings individually, or add an entire folder. If you choose to extract only from the current drawing, you can then go back to the drawing and select objects.
  3. Then you choose which categories of data you want, and further refine the selection by choosing properties within those categories. You can extract 10 categories of data from objects, although not every drawing contains all 10 categories. These are:
  • 3D Visualization, including materials
  • Attributes
  • Drawing data, such as file name, file size, and more
  • Dynamic Blocks, meaning their properties
  • General, which means properties such as color, layer, etc.
  • Geometry, which includes X,Y coordinates, and other object-specific data
  • Misc, which includes block unit and closed/open status
  • Pattern, which means hatch pattern properties
  • Table, which is table properties
  • Text, which includes single or multiline text properties
  1. Next you refine the data. You can create formulas, specify data format, and more using the right-click shortcut menu. You can also sort columns and link to external data.
  2. On the next page, you choose whether you want to create a table, an external file, or both. You can create XLS, CSV, MDB, or TXT files.
  3. Finally, you place the table, specify the file name and location, or both. Here you see part of a table that includes drawing information from an entire folder of drawings.
The data extraction table is linked to its objects. If you change the data, you’re notified when you try to plot or publish a drawing. For example, if your table includes objects within a drawing and their X,Y coordinates, and you move one of those objects, you see the following dialog box when you start the PLOT command. You can then click Update to keep the table accurate before plotting.

Ellen Finkelstein

7 comments to Extract data from objects in AutoCAD 2008 and later

  • Walter

    Hi. I need some help.
    Lines are up side down.
    From far look okay. From up close when pointer is over line another line appear. New line. Now, new line is okay to work with. Add another line to it is possible.
    Looks like all is out of order. How to fix this problem?.
    Is almost impossible to use program. Thanks, Walter

  • jane

    hi! i have this problem .. i dont know how to transfer the bject in paper space to the microsoft office word .. can you please help me? … thanks a lot! … God bless you more and more!!! … 🙂

  • Ellen

    Have you tried a simple copy and paste? Or JPGOUT to save it as a JPG file and then Insert> Picture in Word?

  • jane

    i tried copy paste but the plan is to small in the ms word .. what is JPGOUT? .. i dont hve any idea of it .. thanks for your help .. much appreciated .. 🙂

    .. God bless you more and more!!! …

  • Michael

    Hi Ellen, I searched pretty hard to find this answer before posting, but I think this is a new one.
    My Data Extraction is working great. The issue is, my drawings come from an engineering program that are text. I have this code that creates this text to an attribute, Very handy. The problem is the new attribute is just editable, not the full blown “Enhanced Attribute Editor” Here’s the code.

    (defun c:TTT ( / el i ss st ) (vl-load-com)

    (if (setq ss (ssget “_:L” ‘((0 . “TEXT”))))
    (repeat (setq i (sslength ss))
    (setq el (entget (ssname ss (setq i (1- i))))
    st (vl-string-translate ” ” “_” (cdr (assoc 1 el)))
    )
    (if
    (entmakex
    (append ‘((0 . “ATTDEF”))
    (vl-remove-if ‘(lambda ( pair ) (member (car pair) ‘(0 100 73))) el)
    (list
    (cons 70 0)
    (cons 74 (cdr (assoc 73 el)))
    (cons 2 st)
    (cons 3 st)
    )
    )
    )
    (entdel (cdr (assoc -1 el)))
    )
    )
    )
    (princ)
    )
    Any suggestions?

  • Lester

    Hi Ellen

    I have a number of floor plan drawings with multiple different hatches on them representing things like, building area, rentable area, circulation areas, service areas, business departments, meeting rooms, pause areas ect.

    Each hatch representing a specific type of area is drawn on its own layer, with a polyline boundary.
    IE, Rentable area will be a layer with the rentable areas hatched. Circulation area will be a layer with the circulation areas hatched ect, ect.

    I need to create a table in the drawing which gives me the totals of each area.

    I can use the Quick select tool and select hatches on a specific layer only.
    If I then look at the properties window, the cumulative area is given.

    How do I extract that cumulative area into the drawing?

    I can email a more detailed description if necessary

    Thanks
    Lester

  • Ted

    Hi Lester,

    Once you have data in a table you use formulas much like Excel. However Sometimes I find it easier to DataEextract out to Excel and then either Datalink the Excel back into the Drawing or Copy and “PasteSpec” the Eexcel into the drawings.

    Sometimes the later is easier for a quick and dirty or Of if the data is not going to change. But if data is constantly changing then I do the former. Your mileage may vary.

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>