Acad Manual
Acad Manual
Acad Manual
DXF Reference
February 2009
© 2009 Autodesk, Inc. All Rights Reserved. Except as otherwise permitted by Autodesk, Inc., this publication, or parts thereof, may not be
reproduced in any form, by any method, for any purpose.
Certain materials included in this publication are reprinted with the permission of the copyright holder.
Trademarks
The following are registered trademarks or trademarks of Autodesk, Inc., in the USA and other countries: 3DEC (design/logo), 3December,
3December.com, 3ds Max, ADI, Alias, Alias (swirl design/logo), AliasStudio, Alias|Wavefront (design/logo), ATC, AUGI, AutoCAD, AutoCAD
Learning Assistance, AutoCAD LT, AutoCAD Simulator, AutoCAD SQL Extension, AutoCAD SQL Interface, Autodesk, Autodesk Envision, Autodesk
Insight, Autodesk Intent, Autodesk Inventor, Autodesk Map, Autodesk MapGuide, Autodesk Streamline, AutoLISP, AutoSnap, AutoSketch,
AutoTrack, Backdraft, Built with ObjectARX (logo), Burn, Buzzsaw, CAiCE, Can You Imagine, Character Studio, Cinestream, Civil 3D, Cleaner,
Cleaner Central, ClearScale, Colour Warper, Combustion, Communication Specification, Constructware, Content Explorer, Create>what's>Next>
(design/logo), Dancing Baby (image), DesignCenter, Design Doctor, Designer's Toolkit, DesignKids, DesignProf, DesignServer, DesignStudio,
Design|Studio (design/logo), Design Web Format, Discreet, DWF, DWG, DWG (logo), DWG Extreme, DWG TrueConvert, DWG TrueView, DXF,
Ecotect, Exposure, Extending the Design Team, Face Robot, FBX, Filmbox, Fire, Flame, Flint, FMDesktop, Freewheel, Frost, GDX Driver, Gmax,
Green Building Studio, Heads-up Design, Heidi, HumanIK, IDEA Server, i-drop, ImageModeler, iMOUT, Incinerator, Inferno, Inventor, Inventor
LT, Kaydara, Kaydara (design/logo), Kynapse, Kynogon, LandXplorer, LocationLogic, Lustre, Matchmover, Maya, Mechanical Desktop, Moonbox,
MotionBuilder, Movimento, Mudbox, NavisWorks, ObjectARX, ObjectDBX, Open Reality, Opticore, Opticore Opus, PolarSnap, PortfolioWall,
Powered with Autodesk Technology, Productstream, ProjectPoint, ProMaterials, RasterDWG, Reactor, RealDWG, Real-time Roto, REALVIZ,
Recognize, Render Queue, Retimer,Reveal, Revit, Showcase, ShowMotion, SketchBook, Smoke, Softimage, Softimage|XSI (design/logo),
SteeringWheels, Stitcher, Stone, StudioTools, Topobase, Toxik, TrustedDWG, ViewCube, Visual, Visual Construction, Visual Drainage, Visual
Landscape, Visual Survey, Visual Toolbox, Visual LISP, Voice Reality, Volo, Vtour, Wire, Wiretap, WiretapCentral, XSI, and XSI (design/logo).
The following are registered trademarks or trademarks of Autodesk Canada Co. in the USA and/or Canada and other countries:
Backburner,Multi-Master Editing, River, and Sparks.
The following are registered trademarks or trademarks of MoldflowCorp. in the USA and/or other countries: Moldflow, MPA, MPA
(design/logo),Moldflow Plastics Advisers, MPI, MPI (design/logo), Moldflow Plastics Insight,MPX, MPX (design/logo), Moldflow Plastics Xpert.
All other brand names, product names or trademarks belong to their respective holders.
Disclaimer
THIS PUBLICATION AND THE INFORMATION CONTAINED HEREIN IS MADE AVAILABLE BY AUTODESK, INC. "AS IS." AUTODESK, INC. DISCLAIMS
ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR
FITNESS FOR A PARTICULAR PURPOSE REGARDING THESE MATERIALS.
Published by:
Autodesk, Inc.
111 Mclnnis Parkway
San Rafael, CA 94903, USA
Contents
iii
BLOCK_RECORD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
DIMSTYLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
LAYER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
LTYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
STYLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
UCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
VIEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
VPORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
iv | Contents
MLEADERSTYLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Common MLeaderStyle Group Codes . . . . . . . . . . . . . . . 108
MLeaderStyle Context Data Group Codes . . . . . . . . . . . . . 111
MLeaderStyle Leader Node Group Codes . . . . . . . . . . . . . 115
MLeaderStyle Leader Line Group Codes . . . . . . . . . . . . . . 115
MTEXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
OLEFRAME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
OLE2FRAME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
POINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
POLYLINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Polyface Meshes . . . . . . . . . . . . . . . . . . . . . . . . . . 124
RAY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
REGION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
SECTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
SEQEND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
SHAPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
SOLID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
SPLINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
SUBDIVISION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
SUN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
SURFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Extruded Surface . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Lofted Surface . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Revolved Surface . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Swept Surface . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
TA B L E . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 9
TEXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
TOLERANCE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
TRACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
UNDERLAY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
VERTEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
VIEWPORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
WIPEOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
XLINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Contents | v
FIELD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
GEODATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
GROUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
IDBUFFER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
IMAGEDEF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
IMAGEDEF_REACTOR . . . . . . . . . . . . . . . . . . . . . . . . . . 174
LAYER_INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
LAYER_FILTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
LAYOUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
LIGHTLIST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
MATERIAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
MLINESTYLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
OBJECT_PTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
PLOTSETTINGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
RASTERVARIABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
RENDER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
RENDERENVIRONMENT . . . . . . . . . . . . . . . . . . . . . 193
MENTALRAYRENDERSETTINGS . . . . . . . . . . . . . . . . . . 194
RENDERGLOBAL . . . . . . . . . . . . . . . . . . . . . . . . . . 197
SECTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Section Manager . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Section Settings . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Section Type Settings . . . . . . . . . . . . . . . . . . . . . . . 200
Section Geometry Settings . . . . . . . . . . . . . . . . . . . . . 201
SPATIAL_INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
SPATIAL_FILTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
SORTENTSTABLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
TABLESTYLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
UNDERLAYDEFINITION . . . . . . . . . . . . . . . . . . . . . . . . . 207
VISUALSTYLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
VBA_PROJECT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
WIPEOUTVARIABLES . . . . . . . . . . . . . . . . . . . . . . . . . . 211
XRECORD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
vi | Contents
Symbol Table Example . . . . . . . . . . . . . . . . . . . 221
Blocks Group Codes in DXF Files . . . . . . . . . . . . . . . . . 224
Entity Group Codes in DXF Files . . . . . . . . . . . . . . . . . 226
Object Group Codes in DXF Files . . . . . . . . . . . . . . . . . 226
Writing a DXF Interface Program . . . . . . . . . . . . . . . . . 227
Reading a DXF File . . . . . . . . . . . . . . . . . . . . . . 227
Writing a DXF File . . . . . . . . . . . . . . . . . . . . . . 229
Binary DXF Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Slide Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Old Slide Header . . . . . . . . . . . . . . . . . . . . . . . . . . 236
Slide Library Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Contents | vii
viii
DXF Format
1
The DXF™ format is a tagged data representation of all the information contained in an
AutoCAD® drawing file. Tagged data means that each data element in the file is preceded by
an integer number that is called a group code. A group code's value indicates what type of data
element follows. This value also indicates the meaning of a data element for a given object
(or record) type. Virtually all user-specified information in a drawing file can be represented
in DXF format.
■ “ENTITIES Section”
1
■ “OBJECTS Section”
■ APP.Application-specific description.
NOTE Accommodating DXF files from future releases of AutoCAD® will be easier
if you write your DXF processing program in a table-driven way, ignore undefined
group codes, and make no assumptions about the order of group codes in an
entity. With each new AutoCAD release, new group codes will be added to entities
to accommodate additional features.
0-9 String (with the introduction of extended symbol names in AutoCAD 2000, the 255-character
limit has been increased to 2049 single-byte characters not including the newline at the end
of the line)
410-419 String
430-439 String
450-459 Long
470-479 String
-1 APP: entity name. The name changes each time a drawing is opened. It is never saved (fixed)
9 DXF: variable name identifier (used only in HEADER section of the DXF file)
10 Primary point; this is the start point of a line or text entity, center of a circle, and so on
DXF: X value of the primary point (followed by Y and Z value codes 20 and 30)
APP: 3D point (list of three reals)
40-48 Double-precision floating-point values (text height, scale factors, and so on)
48 Linetype scale; double precision floating point scalar value; default value is defined for all entity
types
49 Repeated double-precision floating-point value. Multiple 49 groups may appear in one entity
for variable-length tables (such as the dash lengths in the LTYPE table). A 7x group always appears
before the first 49 group to specify the table length
50-58 Angles (output in degrees to DXF files and radians through AutoLISP and ObjectARX applications)
68 APP: identifies whether viewport is on but fully off screen; is not active or is off
100 Subclass data marker (with derived class name as a string). Required for all objects and entity
classes that are derived from another concrete class. The subclass data marker segregates data
defined by different classes in the inheritance chain for the same object.
This is in addition to the requirement for DXF names for each distinct concrete class derived
from ObjectARX (see Subclass Markers on page 241)
102 Control string, followed by “{<arbitrary name>” or “}”. Similar to the xdata 1002 group code,
except that when the string begins with “{“, it can be followed by an arbitrary string whose
interpretation is up to the application. The only other control string allowed is “}” as a group
terminator. AutoCAD does not interpret these strings except during drawing audit operations.
They are for application use
120-122 DXF: Y value of UCS origin, UCS X-axis, and UCS Y-axis
130-132 DXF: Z value of UCS origin, UCS X-axis, and UCS Y-axis
140-149 Double-precision floating-point values (points, elevation, and DIMSTYLE settings, for example)
170-179 16-bit integer values, such as flag bits representing DIMSTYLE settings
310-319 Arbitrary binary chunks with same representation and limits as 1004 group codes: hexadecimal
strings of up to 254 characters represent data chunks of up to 127 bytes
320-329 Arbitrary object handles; handle values that are taken “as is”. They are not translated during
INSERT and XREF operations
330-339 Soft-pointer handle; arbitrary soft pointers to other objects within same DXF file or drawing.
Translated during INSERT and XREF operations
340-349 Hard-pointer handle; arbitrary hard pointers to other objects within same DXF file or drawing.
Translated during INSERT and XREF operations
350-359 Soft-owner handle; arbitrary soft ownership links to other objects within same DXF file or
drawing. Translated during INSERT and XREF operations
360-369 Hard-owner handle; arbitrary hard ownership links to other objects within same DXF file or
drawing. Translated during INSERT and XREF operations
370-379 Lineweight enum value (AcDb::LineWeight). Stored and moved around as a 16-bit integer.
Custom non-entity objects may use the full range, but entity classes only use 371-379 DXF
group codes in their representation, because AutoCAD and AutoLISP both always assume a
370 group code is the entity's lineweight. This allows 370 to behave like other “common” entity
fields
380-389 PlotStyleName type enum (AcDb::PlotStyleNameType). Stored and moved around as a 16-bit
integer. Custom non-entity objects may use the full range, but entity classes only use 381-389
DXF group codes in their representation, for the same reason as the Lineweight range above
390-399 String representing handle value of the PlotStyleName object, basically a hard pointer, but has
a different range to make backward compatibility easier to deal with. Stored and moved around
as an object ID (a handle in DXF files) and a special type in AutoLISP. Custom non-entity objects
may use the full range, but entity classes only use 391-399 DXF group codes in their represent-
ation, for the same reason as the lineweight range above
410-419 String
420-427 32-bit integer value. When used with True Color; a 32-bit integer representing a 24-bit color
value. The high-order byte (8 bits) is 0, the low-order byte an unsigned char holding the Blue
value (0-255), then the Green value, and the next-to-high order byte is the Red Value. Convering
this integer value to hexadecimal yields the following bit mask: 0x00RRGGBB. For example, a
true color with Red==200, Green==100 and Blue==50 is 0x00C86432, and in DXF, in decimal,
13132850
430-437 String; when used for True Color, a string representing the name of the color
440-447 32-bit integer value. When used for True Color, the transparency value
450-459 Long
470-479 String
480-481 Hard-pointer handle; arbitrary hard pointers to other objects within same DXF file or drawing.
Translated during INSERT and XREF operations
999 DXF: The 999 group code indicates that the line following it is a comment string. SAVEAS does
not include such groups in a DXF output file, but OPEN honors them and ignores the comments.
You can use the 999 group to include comments in a DXF file that you've edited
1001 Registered application name (ASCII string up to 31 bytes long) for extended data
11
DXF header variables
Variable Group code Description
$DIMALTU 70 Units format for alternate units of all dimension style family
members except angular:
1 = Scientific; 2 = Decimal; 3 = Engineering;
4 = Architectural (stacked); 5 = Fractional (stacked);
6 = Architectural; 7 = Fractional
$DIMFAC 40 Scale factor used to calculate the height of text for dimen-
sion fractions and tolerances. AutoCAD multiplies DIMTXT
by DIMTFAC to set the fractional or tolerance text height
$DWGCODEPAGE 3 Drawing code page; set to the system code page when a
new drawing is created, but not otherwise maintained by
AutoCAD
$EXTMAX 10, 20, 30 X, Y, and Z drawing extents upper-right corner (in WCS)
$EXTMIN 10, 20, 30 X, Y, and Z drawing extents lower-left corner (in WCS)
$HYPERLINKBASE 1 Path for all relative hyperlinks in the drawing. If null, the
drawing path is used
$INDEXCTL 280 Controls whether layer and spatial indexes are created and
saved in drawing files:
0 = No indexes are created
1 = Layer index is created
2 = Spatial index is created
3 = Layer and spatial indexes are created
$INSBASE 10, 20, 30 Insertion base set by BASE command (in WCS)
$INTERFEREVPVS 346 Hard-pointer ID to the visual style for the viewport during
interference checking. Default visual style is 3d Wireframe.
$PUCSBASE 2 Name of the UCS that defines the origin and orientation
of orthographic UCS settings (paper space only)
$PUCSORGBACK 10, 20, 30 Point which becomes the new UCS origin after changing
paper space UCS to BACK when PUCSBASE is set to WORLD
$PUCSORGBOTTOM 10, 20, 30 Point which becomes the new UCS origin after changing
paper space UCS to BOTTOM when PUCSBASE is set to
WORLD
$PUCSORGFRONT 10, 20, 30 Point which becomes the new UCS origin after changing
paper space UCS to FRONT when PUCSBASE is set to
WORLD
$PUCSORGLEFT 10, 20, 30 Point which becomes the new UCS origin after changing
paper space UCS to LEFT when PUCSBASE is set to WORLD
$PUCSORGRIGHT 10, 20, 30 Point which becomes the new UCS origin after changing
paper space UCS to RIGHT when PUCSBASE is set to
WORLD
$PUCSORGTOP 10, 20, 30 Point which becomes the new UCS origin after changing
paper space UCS to TOP when PUCSBASE is set to WORLD
$SORTENTS 280 Controls the object sorting methods; accessible from the
Options dialog box User Preferences tab. SORTENTS uses
the following bitcodes:
0 = Disables SORTENTS
1 = Sorts for object selection
2 = Sorts for object snap
4 = Sorts for redraws
8 = Sorts for MSLIDE command slide creation
16 = Sorts for REGEN commands
32 = Sorts for plotting
64 = Sorts for PostScript output
$UCSBASE 2 Name of the UCS that defines the origin and orientation
of orthographic UCS settings
$UCSORGBACK 10, 20, 30 Point which becomes the new UCS origin after changing
model space UCS to BACK when UCSBASE is set to WORLD
$UCSORGBOTTOM 10, 20, 30 Point which becomes the new UCS origin after changing
model space UCS to BOTTOM when UCSBASE is set to
WORLD
$UCSORGFRONT 10, 20, 30 Point which becomes the new UCS origin after changing
model space UCS to FRONT when UCSBASE is set to
WORLD
$UCSORGLEFT 10, 20, 30 Point which becomes the new UCS origin after changing
model space UCS to LEFT when UCSBASE is set to WORLD
$UCSORGRIGHT 10, 20, 30 Point which becomes the new UCS origin after changing
model space UCS to RIGHT when UCSBASE is set to WORLD
$UCSORGTOP 10, 20, 30 Point which becomes the new UCS origin after changing
model space UCS to TOP when UCSBASE is set to WORLD
$UCSXDIR 10, 20, 30 Direction of the current UCS X axis (in WCS)
$UCSYDIR 10, 20, 30 Direction of the current UCS Y axis (in WCS)
$XEDIT 290 Controls whether the current drawing can be edited in-
place when being referenced by another drawing.
0 = Can't use in-place reference editing
1 = Can use in-place reference editing
Note that DATE returns only a true Julian date if the system's clock is set to
UTC/Zulu (Greenwich Mean Time). TDCREATE and TDUPDATE have the same
format as DATE, but their values represent the creation time and last update
time of the current drawing.
TDINDWG and TDUSRTIMER (and the $TDINDWG and $TDUSRTIMER DXF
header variables) use a format similar to that of DATE, but their values represent
elapsed times, as in
<Number of days>.<Fraction of day>
2 C++ class name. Used to bind with software that defines object class
behavior; always unique
31
CLASSES section group codes
Group code Description
16 = Linetype change allowed (0x10)
32 = Linetype scale change allowed (0x20)
64 = Visibility change allowed (0x40)
128 = Cloning allowed (0x80)
256 = Lineweight change allowed (0x100)
512 = Plot Style Name change allowed (0x200)
895 = All operations except cloning allowed (0x37F)
1023 = All operations allowed (0x3FF)
1024 = Disables proxy warning dialog (0x400)
32768 = R13 format proxy (0x8000)
280 Was-a-proxy flag. Set to 1 if class was not loaded when this DXF file was
created, and 0 otherwise
281 Is-an-entity flag. Set to 1 if class was derived from the AcDbEntity class
and can reside in the BLOCKS or ENTITIES section. If 0, instances may
appear only in the OBJECTS section
ACDBDICTIONARYWDFLT AcDbDictionaryWithDefault 0 0 0
ACDBPLACEHOLDER AcDbPlaceHolder 0 0 0
ARCALIGNEDTEXT AcDbArcAlignedText 0 0 1
DICTIONARYVAR AcDbDictionaryVar 0 0 0
HATCH AcDbHatch 0 0 1
IDBUFFER AcDbIdBuffer 0 0 0
IMAGEDEF AcDbRasterImageDef 0 0 0
IMAGEDEF_REACTOR AcDbRasterImageDefReactor 1 0 0
LAYER_INDEX AcDbLayerIndex 0 0 0
LAYOUT AcDbLayout 0 0 0
LWPOLYLINE AcDbPolyline 0 0 1
OBJECT_PTR CAseDLPNTableRecord 1 0 0
OLE2FRAME AcDbOle2Frame 0 0 1
PLOTSETTINGS AcDbPlotSettings 0 0 0
RASTERVARIABLES AcDbRasterVariables 0 0 0
RTEXT RText 0 0 1
SORTENTSTABLE AcDbSortentsTable 0 0 0
SPATIAL_INDEX AcDbSpatialIndex 0 0 0
SPATIAL_FILTER AcDbSpatialFilter 0 0 0
WIPEOUTVARIABLES AcDbWipeoutVariables 0 0 0
35
is present, positioned after the 2 group codes for both the symbol table record
objects and the symbol table objects.
The DIMSTYLE table is the only record type in the system with a handle code
of 105 because of its earlier usage of group code 5. As a rule, programmers
should not be concerned about this exception unless it is in the context of
the DIMSTYLE table section. This is the only context in which this exception
should occur.
2 Table name
5 Handle
102 “{ACAD_XDICTIONARY” indicates the start of an extension dictionary group. This group exists
only if persistent reactors have been attached to this object (optional)
application- Codes and values within the 102 groups are application defined (optional)
defined codes
102 “{ACAD_REACTORS” indicates the start of the AutoCAD persistent reactors group. This group
exists only if persistent reactors have been attached to this object (optional)
102 “{ACAD_XDICTIONARY” indicates the start of an extension dictionary group. This group exists
only if persistent reactors have been attached to this object (optional)
APPID
The following group codes apply to APPID symbol table entries. In addition
to the group codes described here, see Common Group Codes for Symbol
Table Entries on page 37. For information about abbreviations and formatting
used in this table, see Formatting Conventions in This Reference on page 2.
2 User-supplied (or application-supplied) application name (for extended data). These table
entries maintain a set of names for all registered applications
BLOCK_RECORD
The following group codes apply to BLOCK_RECORD symbol table entries.
In addition to the group codes described here, see Common Group Codes for
Symbol Table Entries on page 37. For information about abbreviations and
formatting used in this table, see Formatting Conventions in This Reference
on page 2.
2 Block name
DIMSTYLE
The following group codes apply to DIMSTYLE symbol table entries. The
DIMSTYLE system variables are described in “System Variables,” in the
Command Reference. In addition to the group codes described here, see Common
Group Codes for Symbol Table Entries on page 37. For information about
DIMSTYLE | 39
abbreviations and formatting used in this table, see Formatting Conventions
in This Reference on page 2.
3 DIMPOST
4 DIMAPOST
40 DIMSCALE
41 DIMASZ
42 DIMEXO
43 DIMDLI
44 DIMEXE
45 DIMRND
46 DIMDLE
47 DIMTP
48 DIMTM
140 DIMTXT
141 DIMCEN
142 DIMTSZ
143 DIMALTF
144 DIMLFAC
145 DIMTVP
146 DIMTFAC
147 DIMGAP
148 DIMALTRND
71 DIMTOL
72 DIMLIM
73 DIMTIH
74 DIMTOH
75 DIMSE1
76 DIMSE2
77 DIMTAD
78 DIMZIN
79 DIMAZIN
170 DIMALT
DIMSTYLE | 41
DIMSTYLE group codes
Group code Description
171 DIMALTD
172 DIMTOFL
173 DIMSAH
174 DIMTIX
175 DIMSOXD
176 DIMCLRD
177 DIMCLRE
178 DIMCLRT
179 DIMADEC
271 DIMDEC
272 DIMTDEC
273 DIMALTU
274 DIMALTTD
275 DIMAUNIT
276 DIMFRAC
277 DIMLUNIT
278 DIMDSEP
279 DIMTMOVE
280 DIMJUST
281 DIMSD1
282 DIMSD2
283 DIMTOLJ
284 DIMTZIN
285 DIMALTZ
286 DIMALTTZ
288 DIMUPT
289 DIMATFIT
LAYER
The following group codes apply to LAYER symbol table entries. In addition
to the group codes described here, see Common Group Codes for Symbol
LAYER | 43
Table Entries on page 37. For information about abbreviations and formatting
used in this table, see Formatting Conventions in This Reference on page 2.
2 Layer name
6 Linetype name
Xref-dependent layers are output during SAVEAS. For these layers, the
associated linetype name in the DXF file is always CONTINUOUS.
LTYPE
The following group codes apply to LTYPE symbol table entries. In addition
to the group codes described here, see Common Group Codes for Symbol
2 Linetype name
74 Complex linetype element type (one per element). Default is 0 (no embedded shape/text)
The following codes are bit values:
1 = If set, code 50 specifies an absolute rotation; if not set, code 50 specifies a relative rotation
2 = Embedded element is a text string
4 = Embedded element is a shape
LTYPE | 45
LTYPE group codes
Group code Description
50 R = (relative) or A = (absolute) rotation value in radians of embedded shape or text; one per
element if code 74 specifies an embedded shape or text string
The group codes 74, 75, 340, 46, 50, 44, 45, and 9 are not returned by the
tblsearch or tblnext functions. You must use tblobjname to retrieve these
values within an application.
STYLE
The following group codes apply to STYLE symbol table entries. In addition
to the group codes described here, see Common Group Codes for Symbol
Table Entries on page 37. For information about abbreviations and formatting
used in this table, see Formatting Conventions in This Reference on page 2.
2 Style name
41 Width factor
50 Oblique angle
1071 A long value which contains a truetype font’s pitch and family, charset, and italic and bold flags
A STYLE table item is also used to record shape file LOAD command requests.
In this case the first bit (1) is set in the 70 group flags and only the 3 group
(shape file name) is meaningful (all the other groups are output, however).
UCS
The following group codes apply to UCS symbol table entries. In addition to
the group codes described here, see Common Group Codes for Symbol Table
Entries on page 37. For information about abbreviations and formatting used
in this table, see Formatting Conventions in This Reference on page 2.
2 UCS name
UCS | 47
UCS group codes
Group code Description
64 = If set, the table entry was referenced by at least one entity in the drawing the last time
the drawing was edited. (This flag is for the benefit of AutoCAD commands. It can be ignored
by most programs that read DXF files and need not be set by programs that write DXF files)
79 Always 0
146 Elevation
346 ID/handle of base UCS if this is an orthographic. This code is not present if the 79 code is 0. If
this code is not present and 79 code is non-zero, then base UCS is assumed to be WORLD
71 Orthographic type (optional; always appears in pairs with the 13, 23, 33 codes):
1 = Top; 2 = Bottom
3 = Front; 4 = Back
5 = Left; 6 = Right
Each 71/13,23,33 pair defines the UCS origin for a particular orthographic
type relative to this UCS. For example, if the following pair is present, then
invoking the UCS/LEFT command when UCSBASE is set to this UCS will cause
the new UCS origin to become (1,2,3).
If this pair were not present, then invoking the UCS/LEFT command would
cause the new UCS origin to be set to this UCS's origin point.
VIEW
The following group codes apply to VIEW symbol table entries. In addition
to the group codes described here, see Common Group Codes for Symbol
Table Entries on page 37. For information about abbreviations and formatting
used in this table, see Formatting Conventions in This Reference on page 2.
2 Name of view
VIEW | 49
VIEW group codes
Group code Description
21, 31 DXF: Y and Z values of view direction from target (in WCS)
42 Lens length
50 Twist angle
345 ID/handle of AcDbUCSTableRecord if UCS is a named UCS. If not present, then UCS is
unnamed (appears only if code 72 is set to 1)
346 ID/handle of AcDbUCSTableRecord of base UCS if UCS is orthographic (79 code is non-
zero). If not present and 79 code is non-zero, then base UCS is taken to be WORLD (appears
only if code 72 is set to 1)
VPORT
The following group codes apply to VPORT symbol table entries. The VPORT
table is unique: it may contain several entries with the same name (indicating
a multiple-viewport configuration). The entries corresponding to the active
VPORT | 51
viewport configuration all have the name *ACTIVE. The first such entry
describes the current viewport. In addition to the group codes described here,
see Common Group Codes for Symbol Table Entries on page 37. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
2 Viewport name
42 Lens length
45 View height
72 Circle sides
331 or 441 Soft or hard-pointer ID/handle to frozen layer objects; repeats for each frozen layers
VPORT | 53
VPORT group codes
Group code Description
74 UCSICON setting
345 ID/handle of AcDbUCSTableRecord if UCS is a named UCS. If not present, then UCS is unnamed
346 ID/handle of AcDbUCSTableRecord of base UCS if UCS is orthographic (79 code is non-zero).
If not present and 79 code is non-zero, then base UCS is taken to be WORLD
146 Elevation
141 Brightness
142 Contrast
VPORT | 55
56
BLOCKS Section
5
The group codes described in this chapter are found in DXF™ files and used by applications.
The BLOCKS section contains an entry for each block reference in the drawing.
57
BLOCK
The following group codes apply to block entities. For information about
abbreviations and formatting used in this table, see Formatting Conventions
in This Reference on page 2.
5 Handle
application- Codes and values within the 102 groups are application defined (optional)
defined codes
8 Layer name
2 Block name
10 Base point
DXF: X value; APP: 3D point
3 Block name
The UCS in effect when a block definition is created becomes the WCS for all
entities in the block definition. The new origin for these entities is shifted to
match the base point defined for the block definition. All entity data is
translated to fit this new WCS.
ENDBLK
The following group codes apply to endblk objects. For information about
abbreviations and formatting used in this table, see Formatting Conventions
in This Reference on page 2.
ENDBLK | 59
Endblk group codes
Group code Description
5 Handle
application- Codes and values within the 102 groups are application defined (optional)
defined codes
8 Layer name
NOTE Do not write programs that rely on the order shown in these DXF code tables.
Although these tables show the order of group codes as they usually appear, the
order can change under certain conditions or may be changed in a future AutoCAD®
release. The code that controls an entity should be driven by a case (switch) or a
table so that it can process each group correctly even if the order is unexpected.
When a group is omitted, its default value upon input (when using OPEN) is
indicated in the third column. If the value of a group code is equal to the default,
it is omitted upon output (when using SAVEAS). For information about
abbreviations and formatting used in this table, see Formatting Conventions
in This Reference on page 2.
-1 APP: entity name (changes each time a drawing is opened) not omitted
61
Group codes that apply to all graphical objects
Group code Description If omitted,
defaults to…
application- Codes and values within the 102 groups are application-defined (optional) no default
defined codes
102 “{ACAD_REACTORS” indicates the start of the AutoCAD persistent reactors no default
group. This group exists only if persistent reactors have been attached
to this object (optional)
6 Linetype name (present if not BYLAYER). The special name BYBLOCK in- BYLAYER
dicates a floating linetype (optional)
62 Color number (present if not BYLAYER); zero indicates the BYBLOCK BYLAYER
(floating) color; 256 indicates BYLAYER; a negative value indicates that
the layer is turned off (optional)
370 Lineweight enum value. Stored and moved around as a 16-bit integer. not omitted
92 Number of bytes in the proxy entity graphics represented in the sub- no default
sequent 310 groups, which are binary chunk records (optional)
310 Proxy entity graphics data (multiple lines; 256 characters max. per line) no default
(optional)
420 A 24-bit color value that should be dealt with in terms of bytes with values no default
of 0 to 255. The lowest byte is the blue value, the middle byte is the
green value, and the third byte is the red value. The top byte is always
0. The group code cannot be used by custom entities for their own data
because the group code is reserved for AcDbEntity, class-level color data
and AcDbEntity, class-level transparency data
430 Color name. The group code cannot be used by custom entities for their no default
own data because the group code is reserved for AcDbEntity, class-level
color data and AcDbEntity, class-level transparency data
440 Transparency value. The group code cannot be used by custom entities no default
for their own data because the group code is reserved for AcDbEntity,
class-level color data and AcDbEntity, class-level transparency data
3DFACE
The following group codes apply to 3dface entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
13 Fourth corner (in WCS). If only three corners are entered, this is the same as the third corner
DXF: X value; APP: 3D point
3DSOLID
The following group codes apply to 3dsolid entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
3 Additional lines of proprietary data (if previous group 1 string is greater than 255 characters)
(optional)
ACAD_PROXY_ENTITY
The following group codes apply to proxy entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
3DSOLID | 65
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
91 DXF: Application entity's class ID. Class IDs are based on the order of the class in the CLASSES
section. The first class is given the ID of 500, the next is 501, and so on
310 DXF: Binary graphics data (multiple entries can appear) (optional)
310 DXF: Binary entity data (multiple entries can appear) (optional)
95 DXF: Object drawing format when it becomes a proxy (a 32-bit unsigned integer):
Low word is AcDbDwgVersion
High word is MaintenanceReleaseVersion
ARC
The following group codes apply to arc entities. In addition to the group codes
described here, see Common Group Codes for Entities on page 61. For
40 Radius
50 Start angle
51 End angle
ATTDEF
The following group codes apply to attdef (attribute definition) entities. In
addition to the group codes described here, see Common Group Codes for
Entities on page 61. For information about abbreviations and formatting used
in this table, see Formatting Conventions in This Reference on page 2.
ATTDEF | 67
Attdef group codes
Group code Description
40 Text height
41 Relative X scale factor (width) (optional; default = 1). This value is also adjusted when fit-type
text is used
71 Text generation flags (optional; default = 0); see TEXT on page 144 group codes
72 Horizontal text justification type (optional; default = 0); see TEXT on page 144 group codes
21, 31 DXF: Y and Z values of second alignment point (in OCS) (optional)
3 Prompt string
70 Attribute flags:
1 = Attribute is invisible (does not appear)
2 = This is a constant attribute
4 = Verification is required on input of this attribute
8 = Attribute is preset (no prompt during insertion)
74 Vertical text justification type (optional, default = 0); see group code 73 inTEXT on page 144
280 Lock position flag. Locks the position of the attribute within the block reference
280 Duplicate record cloning flag (determines how to merge duplicate entries):
1 = Keep existing
70 MText flag:
2 = multiline attribute
4 = constant multiline attribute definition
70 isReallyLocked flag:
0 = unlocked
1 = locked
ATTDEF | 69
Attdef group codes
Group code Description
67 Absent or zero indicates entity is in model space. 1 indicates entity is in paper space (optional)
8 Layer name
10 Insertion point
DXF: X value; APP: 3D point
71 Attachment point:
1 = Top left; 2 = Top center; 3 = Top right
4 = Middle left; 5 = Middle center; 6 = Middle right
7 = Bottom left; 8 = Bottom center; 9 = Bottom right
72 Drawing direction:
1 = Left to right
3 = Top to bottom
5 = By style (the flow direction is inherited from the associated text style)
1 Text string
If the text string is less than 250 characters, all characters appear in group 1. If the text string
is greater than 250 characters, the string is divided into 250-character chunks, which appear
in one or more group 3 codes. If group 3 codes are used, the last group is a group 1 and has
fewer than 250 characters.
7 DXF: X value; APP: 3D vectText style name (STANDARD if not provided) (optional)
ATTDEF | 71
Attdef group codes
Group code Description
If group 72 and/or 74 values are nonzero then the first alignment point values
are ignored and new values are calculated by AutoCAD, based on the second
alignment point and the length and height of the text string itself (after
applying the text style). If the 72 and 74 values are zero or missing, then the
second alignment point is meaningless.
ATTRIB
The following group codes apply to attrib (attribute) entities. In addition to
the group codes described here, see Common Group Codes for Entities on
page 61. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
40 Text height
70 Attribute flags:
1 = Attribute is invisible (does not appear)
2 = This is a constant attribute
4 = Verification is required on input of this attribute
8 = Attribute is preset (no prompt during insertion)
41 Relative X scale factor (width) (optional; default = 1). This value is also adjusted when fit-type
text is used
71 Text generation flags (optional; default = 0). See TEXT on page 144 group codes
72 Horizontal text justification type (optional; default = 0). See TEXT on page 144 group codes
74 Vertical text justification type (optional; default = 0). See group code 73 inTEXT on page 144
210 Extrusion direction. Present only if the entity's extrusion direction is not parallel to the WCS Z
axis (optional; default = 0, 0, 1)
DXF: X value; APP: 3D vector
280 Lock position flag. Locks the position of the attribute within the block reference
ATTRIB | 73
Attrib group codes
Group code Description
280 Duplicate record cloning flag (determines how to merge duplicate entries):
1 = Keep existing
70 MText flag:
2 = multiline attribute
4 = constant multiline attribute definition
70 isReallyLocked flag:
0 = unlocked
1 = locked
67 Absent or zero indicates entity is in model space. 1 indicates entity is in paper space (optional)
8 Layer name
10 Insertion point
DXF: X value; APP: 3D point
71 Attachment point:
1 = Top left; 2 = Top center; 3 = Top right
4 = Middle left; 5 = Middle center; 6 = Middle right
7 = Bottom left; 8 = Bottom center; 9 = Bottom right
72 Drawing direction:
1 = Left to right
3 = Top to bottom
5 = By style (the flow direction is inherited from the associated text style)
1 Text string
If the text string is less than 250 characters, all characters appear in group 1. If the text string
is greater than 250 characters, the string is divided into 250-character chunks, which appear
in one or more group 3 codes. If group 3 codes are used, the last group is a group 1 and has
fewer than 250 characters.
7 DXF: X value; APP: 3D vectText style name (STANDARD if not provided) (optional)
ATTRIB | 75
Attrib group codes
Group code Description
If group 72 and/or 74 values are nonzero then the text insertion point values
are ignored, and new values are calculated by AutoCAD based on the text
alignment point and the length of the text string itself (after applying the text
style). If the 72 and 74 values are zero or missing, then the text alignment
point is ignored and recalculated based on the text insertion point and the
length of the text string itself (after applying the text style).
3 Additional lines of proprietary data (if previous group 1 string is greater than 255 characters)
(optional)
CIRCLE
The following group codes apply to circle entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
40 Radius
BODY | 77
Circle group codes
Group code Description
DIMENSION
Dimension entity definitions consist of group codes that are common to all
dimension types, followed by codes specific to the type.
2 Name of the block that contains the entities that make up the dimension picture
21, 31 DXF: Y and Z values of middle point of dimension text (in OCS)
70 Dimension type:
Values 0-6 are integer values that represent the dimension type. Values 32, 64, and 128
are bit values, which are added to the integer values (value 32 is always set in R13 and
later releases)
71 Attachment point:
1 = Top left; 2 = Top center; 3 = Top right
4 = Middle left; 5 = Middle center; 6 = Middle right
7 = Bottom left; 8 = Bottom center; 9 = Bottom right
1 Dimension text explicitly entered by the user. Optional; default is the measurement. If
null or “<>”, the dimension measurement is drawn as the text, if ““ (one blank space),
the text is suppressed. Anything else is drawn as the text
53 The optional group code 53 is the rotation angle of the dimension text away from its default
orientation (the direction of the dimension line) (optional)
51 All dimension types have an optional 51 group code, which indicates the horizontal direc-
tion for the dimension entity. The dimension entity determines the orientation of dimension
text and lines for horizontal, vertical, and rotated linear dimensions
This group value is the negative of the angle between the OCS X axis and the UCS X axis.
It is always in the XY plane of the OCS
For all dimension types, the following group codes represent 3D OCS points:
22, 32 DXF: Y and Z values of insertion point for clones of a dimension—Baseline and Continue (in
OCS)
23, 33 DXF: Y and Z values of definition point for linear and angular dimensions (in WCS)
24, 34 DXF: Y and Z values of definition point for linear and angular dimensions (in WCS)
The point (13,23,33) specifies the start point of the first extension line and
the point (14,24,34) specifies the start point of the second extension line.
Point (10,20,30) specifies the dimension line location. The point (11,21,31)
specifies the midpoint of the dimension text.
22, 32 DXF: Y and Z values of insertion point for clones of a dimension—Baseline and Continue (in
OCS)
23, 33 DXF: Y and Z values of definition point for linear and angular dimensions (in WCS)
24, 34 DXF: Y and Z values of definition point for linear and angular dimensions (in WCS)
52 Linear dimension types with an oblique angle have an optional group code 52. When added
to the rotation angle of the linear dimension (group code 50), it gives the angle of the extension
lines
15 Definition point for diameter, radius, and angular dimensions (in WCS)
DXF: X value; APP: 3D point
25, 35 DXF: Y and Z values of definition point for diameter, radius, and angular dimensions (in
WCS)
The point (15,25,35) specifies the first point of the dimension line on the
circle/arc and the point (10,20,30) specifies the point opposite the first point.
The point (11,21,31) specifies the midpoint of the dimension text.
The point (15,25,35) specifies the first point of the dimension line on the
circle/arc and the point (10,20,30) specifies the center of the circle/arc. The
point (11,21,31) specifies the midpoint of the dimension text.
23, 33 DXF: Y and Z values of definition point for linear and angular dimensions (in WCS)
24, 34 DXF: Y and Z values of definition point for linear and angular dimensions (in WCS)
15 Definition point for diameter, radius, and angular dimensions (in WCS) DXF: X value; APP: 3D
point
25, 35 DXF: Y and Z values of definition point for diameter, radius, and angular dimensions (in WCS)
26, 36 DXF: Y and Z values of point defining dimension arc for angular dimensions (in OCS)
The points (13,23,33) and (14,24,34) specify the endpoints of the line used
to determine the first extension line. Points (10,20,30) and (15,25,35) specify
the endpoints of the line used to determine the second extension line. Point
(16,26,36) specifies the location of the dimension line arc. The point (11,21,31)
specifies the midpoint of the dimension text.
The point (15,25,35) specifies the vertex of the angle. The points (13,23,33)
and (14,24,34) specify the endpoints of the extension lines. The point
23, 33 DXF: Y and Z values of definition point for linear and angular dimensions (in WCS)
24, 34 DXF: Y and Z values of definition point for linear and angular dimensions (in WCS)
The point (13,23,33) specifies the feature location and the point (14,24,34)
specifies the leader endpoint. The point (11,21,31) specifies the midpoint of
the dimension text. Point (10,20,30) is placed at the origin of the UCS that is
current when the dimension is created.
ELLIPSE
The following group codes apply to ellipse entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
21, 31 DXF: Y and Z values of endpoint of major axis, relative to the center (in WCS)
HATCH
The following group codes apply to hatch and MPolygon entities. In addition
to the group codes described here, see Common Group Codes for Entities on
page 61. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
HATCH | 87
Hatch group codes
Group code Description
DXF: X value = 0; APP: 3D point (X and Y always equal 0, Z represents the elevation)
70 Solid fill flag (solid fill = 1; pattern fill = 0); for MPolygon, the version of MPolygon
71 Associativity flag (associative = 1; non-associative = 0); for MPolygon, solid-fill flag (has solid
fill = 1; lacks solid fill = 0)
varies Boundary path data. Repeats number of times specified by code 91. See Boundary Path Data
on page 90
75 Hatch style:
0 = Hatch “odd parity” area (Normal style)
1 = Hatch outermost area only (Outer style)
2 = Hatch through entire area (Ignore style)
varies Pattern line data. Repeats number of times specified by code 78. See Pattern Data on page 94
47 Pixel size used to determine the density to perform various intersection and ray casting operations
in hatch pattern computation for associative hatches and hatches created with the Flood
method of hatching
99 For MPolygon, number of degenerate boundary paths (loops), where a degenerate boundary
path is a border that is ignored by the hatch
450 Indicates solid hatch or gradient; if solid hatch, the values for the remaining codes are ignored
but must be present. Optional; if code 450 is in the file, then the following codes must be in
the file: 451, 452, 453, 460, 461, 462, and 470. If code 450 is not in the file, then the following
codes must not be in the file: 451, 452, 453, 460, 461, 462, and 470
0 = Solid hatch
1 = Gradient
452 Records how colors were defined and is used only by dialog code:
0 = Two-color gradient
1 = Single-color gradient
HATCH | 89
Hatch group codes
Group code Description
461 Gradient definition; corresponds to the Centered option on the Gradient Tab of the Boundary
Hatch and Fill dialog box. Each gradient has two definitions, shifted and unshifted. A Shift value
describes the blend of the two definitions that should be used. A value of 0.0 means only the
unshifted version should be used, and a value of 1.0 means that only the shifted version should
be used.
462 Color tint value used by dialog code (default = 0, 0; range is 0.0 to 1.0). The color tint value is
a gradient color and controls the degree of tint in the dialog when the Hatch group code 452
is set to 1.
varies Polyline boundary type data (only if boundary = polyline). See Polyline boundary data table
below
varies Edge type data (only if boundary is not a polyline). See appropriate Edge data table below
73 Is closed flag
40 Radius
50 Start angle
51 End angle
73 Is counterclockwise flag
50 Start angle
51 End angle
73 Is counterclockwise flag
94 Degree
73 Rational
74 Periodic
95 Number of knots
12 Start tangent
DXF: X value; APP: 2D vector
13 End tangent
DXF: X value; APP: 2D vector
Pattern Data
The following pattern data codes repeat for each pattern definition line. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
HELIX
The following group codes apply to helix entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
Spline data
40 Radius
41 Number of turns
42 Turn height
IMAGE
The following group codes apply to image entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
90 Class version
IMAGE | 95
Image group codes
Group code Description
11 U-vector of a single pixel (points along the visual bottom of the image, starting at the insertion
point) (in WCS)
DXF: X value; APP: 3D point
12 V-vector of a single pixel (points along the visual left side of the image, starting at the insertion
point) (in WCS)
DXF: X value; APP: 3D point
INSERT
The following group codes apply to insert (block reference) entities. In addition
to the group codes described here, see Common Group Codes for Entities on
page 61. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
66 Variable attributes-follow flag (optional; default = 0); if the value of attributes-follow flag is 1,
a series of attribute entities is expected to follow the insert, terminated by a seqend entity
2 Block name
INSERT | 97
Insert group codes
Group code Description
LEADER
The following group codes apply to leader entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
212 Offset of last leader vertex from block reference insertion point
DXF: X value; APP: 3D vector
LEADER | 99
Leader group codes
Group code Description
LIGHT
The following group codes apply to light entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
90 Version number
1 Light name
290 Status
40 Intensity
10 Light Position
DXF: X value; APP: 3D point
11 Target location
72 Attenuation type
0 = None
1 = Inverse Linear
2 = Inverse Square
50 Hotspot angle
51 Falloff angle
73 Shadow Type
0 = Ray traced shadows
1 = Shadow maps
LINE
The following group codes apply to line entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
LINE | 101
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
LWPOLYLINE
The following group codes apply to lwpolyline entities. In addition to the
group codes described here, see Common Group Codes for Entities on page
61. For information about abbreviations and formatting used in this table,
see Formatting Conventions in This Reference on page 2.
90 Number of vertices
43 Constant width (optional; default = 0). Not used if variable width (codes 40 and/or 41) is set
10 Vertex coordinates (in OCS), multiple entries; one entry for each vertex
DXF: X value; APP: 2D point
20 DXF: Y value of vertex coordinates (in OCS), multiple entries; one entry for each vertex
40 Starting width (multiple entries; one entry for each vertex) (optional; default = 0; multiple
entries). Not used if constant width (code 43) is set
41 End width (multiple entries; one entry for each vertex) (optional; default = 0; multiple entries).
Not used if constant width (code 43) is set
42 Bulge (multiple entries; one entry for each vertex) (optional; default = 0)
MLINE
The following group codes apply to mline entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
2 String of up to 32 characters. The name of the style used for this mline. An entry for this style
must exist in the MLINESTYLE dictionary.
Do not modify this field without also updating the associated entry in the MLINESTYLE dictionary
MLINE | 103
Mline group codes
Group code Description
40 Scale factor
72 Number of vertices
11 Vertex coordinates (multiple entries; one entry for each vertex) DXF: X value; APP: 3D point
12 Direction vector of segment starting at this vertex (multiple entries; one for each vertex)
DXF: X value; APP: 3D vector
22, 32 DXF: Y and Z values of direction vector of segment starting at this vertex
13 Direction vector of miter at this vertex (multiple entries: one for each vertex)
DXF: X value; APP: 3D vector
74 Number of parameters for this element (repeats for each element in segment)
75 Number of area fill parameters for this element (repeats for each element in segment)
The group code 41 parameterization is a list of real values, one real per group
code 41. The list may contain zero or more items. The first group code 41
value is the distance from the segment vertex along the miter vector to the
point where the line element's path intersects the miter vector. The next group
code 41 value is the distance along the line element's path from the point
defined by the first group 41 to the actual start of the line element. The next
is the distance from the start of the line element to the first break (or cut) in
the line element. The successive group code 41 values continue to list the start
and stop points of the line element in this segment of the mline. Linetypes
do not affect group 41 lists.
The group code 42 parameterization is also a list of real values. Similar to the
41 parameterization, it describes the parameterization of the fill area for this
mline segment. The values are interpreted identically to the 41 parameters
and when taken as a whole for all line elements in the mline segment, they
define the boundary of the fill area for the mline segment.
A common example of the use of the group code 42 mechanism is when an
unfilled mline crosses over a filled mline and mledit is used to cause the filled
mline to appear unfilled in the crossing area. This would result in two group
42s for each line element in the affected mline segment; one for the fill stop
and one for the fill start.
The 2 group codes in mline entities and mlinestyle objects are redundant
fields. These groups should not be modified under any circumstances, although
it is safe to read them and use their values. The correct fields to modify are as
follows:
Mline The 340 group in the same object, which indicates the proper
MLINESTYLE object.
MLINE | 105
MULTILEADER
The following group codes apply to mleader entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
173 LeaderLineType
91 LeaderLineColor
340 LeaderLineType ID
92 LeaderLineWeight
42 Landing Gap
43 Dogleg Length
341 Arrowhead ID
44 Arrowhead Size
342 mTextStyleId
93 Text Color
45 Text Height
46 Align Space
MULTILEADER | 107
MLeader group codes
Group code Description
142 Scale
296 Is Annotative
MLEADERSTYLE
MLeaderStyle entity definitions consist of group codes that are common to
all MLeaderStyle types, followed by codes specific to the type.
170 LeaderLineType
91 Leade LineColor
341 LeaderLineTypeID
41 Dogleg Length
342 Arrowhead ID
42 Arrowhead Size
92 Text Color
94 Arrowhead Index
345 Arrowhead ID
40 Content Scale
41 Text Height
290 hasMText
42 Text Rotation
43 Text Width
44 Text Height
90 Text Color
296 HasBlock
10,20,30 Vertex
43 Text Width
44 Text Height
90 Text Color
296 HasBlock
40 Dogleg Length
10,20,30 Vertex
MTEXT
The following group codes apply to mtext entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
10 Insertion point
DXF: X value; APP: 3D point
71 Attachment point:
1 = Top left; 2 = Top center; 3 = Top right
4 = Middle left; 5 = Middle center; 6 = Middle right
7 = Bottom left; 8 = Bottom center; 9 = Bottom right
72 Drawing direction:
1 = Left to right
3 = Top to bottom
5 = By style (the flow direction is inherited from the associated text style)
1 Text string. If the text string is less than 250 characters, all characters appear in group 1. If the
text string is greater than 250 characters, the string is divided into 250-character chunks, which
appear in one or more group 3 codes. If group 3 codes are used, the last group is a group 1
and has fewer than 250 characters
42 Horizontal width of the characters that make up the mtext entity. This value will always be
equal to or less than the value of group code 41 (read-only, ignored if supplied)
MTEXT | 117
Mtext group codes
Group code Description
75 Column type
76 Column count
79 Column Autoheight
48 Column width
49 Column gutter
50 Column heights; this code is followed by a column count (Int16), and then the number of
column heights
Xdata with the "DCO15" application ID may follow an mtext entity. This
contains information related to the dbConnect feature.
OLEFRAME
The following group codes apply to oleframe entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
OLE2FRAME
The following group codes apply to ole2frame entities. This information is
read-only. During OPEN, the values are ignored because they are part of the
OLE binary object, and are obtained by access functions. In addition to the
group codes described here, see Common Group Codes for Entities on page
61. For information about abbreviations and formatting used in this table,
see Formatting Conventions in This Reference on page 2.
OLE2FRAME | 119
Ole2frame group codes
Group code Description
0 = Object resides in model space
1 = Object resides in paper space
OLE2FRAME | 121
Command: (setq e (entget e3))
((-1 . <Entity name: 7d50428>) (0 . "OLE2FRAME") (5 . "2D")
(100 . "AcDbEntity") (67 . 1) (8 . "0") (100 . "AcDbOle2Frame")
(70 . 2) (3 "Paintbrush Picture") (10 4.43116 5.66599 0.0)
(11 6.4188 4.24494 0.0) (71 . 2) (72 . 1))
POINT
The following group codes apply to point entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
50 Angle of the X axis for the UCS in effect when the point was drawn (optional, default = 0); used
when PDMODE is nonzero
POLYLINE
The following group codes apply to polyline entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
10 DXF: always 0
APP: a “dummy” point; the X and Y values are always 0, and the Z value is the polyline's
elevation (in OCS when 2D, WCS when 3D)
20 DXF: always 0
30 DXF: polyline's elevation (in OCS when 2D; WCS when 3D)
75 Curves and smooth surface type (optional; default = 0); integer codes, not bit-coded:
POLYLINE | 123
Polyline group codes
Group code Description
0 = No smooth surface fitted
5 = Quadratic B-spline surface
6 = Cubic B-spline surface
8 = Bezier surface
Polyface Meshes
A polyface mesh is represented in DXF as a variant of a polyline entity. The
polyline header is identified as introducing a polyface mesh by the presence
of the 64 bit in the polyline flags (70) group. The 71 group specifies the number
of vertices in the mesh, and the 72 group specifies the number of faces.
Although these counts are correct for all meshes created with the PFACE
command, applications are not required to place correct values in these fields.
Following the polyline header is a sequence of vertex entities that specify the
vertex coordinates, followed by faces that compose the mesh.
The AutoCAD entity structure imposes a limit on the number of vertices that
a given face entity can specify. You can represent more complex polygons by
decomposing them into triangular wedges. Their edges should be made
invisible to prevent visible artifacts of this subdivision from being drawn. The
PFACE command performs this subdivision automatically, but when
applications generate polyface meshes directly, the applications must do this
themselves. The number of vertices per face is the key parameter in this
subdivision process. The PFACEVMAX system variable provides an application
with the number of vertices per face entity. This value is read-only and is set
to 4.
Polyface meshes created with the PFACE command are always generated with
all the vertex coordinate entities first, followed by the face definition entities.
The code within AutoCAD that processes polyface meshes requires this
ordering. Programs that generate polyface meshes in DXF should generate all
RAY
The following group codes apply to ray entities. In addition to the group codes
described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
REGION
The following group codes apply to region entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
RAY | 125
Region group codes
Group code Description
3 Additional lines of proprietary data (if previous group 1 string is greater than 255 characters)
(optional)
SECTION
The following group codes apply to section entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
90 Section state
91 Section flags
1 Name
40 Top height
41 Bottom height
70 Indicator transparency
92 Number of vertices
12, 22, 32 Back line vertex (repeats for number of back line vertices)
SEQEND
The following group codes apply to seqend entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
-2 APP: name of entity that began the sequence. This entity marks the end of vertex (vertex
type name) for a polyline, or the end of attribute entities (attrib type name) for an insert
entity that has attributes (indicated by 66 group present and nonzero in insert entity).
This code is not saved in a DXF file
SHAPE
The following group codes apply to shape entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
40 Size
SEQEND | 127
Shape group codes
Group code Description
2 Shape name
SOLID
The following group codes apply to solid entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
10 First corner
DXF: X value; APP: 3D point
11 Second corner
DXF: X value; APP: 3D point
12 Third corner
XF: X value; APP: 3D point
13 Fourth corner. If only three corners are entered to define the SOLID, then the fourth corner
coordinate is the same as the third.
DXF: X value; APP: 3D point
SPLINE
The following group codes apply to spline entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
SPLINE | 129
Spline group codes
Group code Description
72 Number of knots
41 Weight (if not 1); with multiple group pairs, they are present if all are not 1
20, 30 DXF: Y and Z values of control points (in WCS); one entry per control point
21, 31 DXF: Y and Z values of fit points (in WCS); one entry per fit point
71 Version number
10 Vertex position
91 Sub-entity marker
90 Property type
SUBDIVISION | 131
Subdivision group codes
Group code Description
0 = Color
1 = Material
2 = Transparency
3 = Material mapper
SUN
The following group codes apply to the sun entity. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
90 Version number
290 Status
63 Color
40 Intensity
291 Shadows
91 Julian day
70 Shadow type
0 = Ray traced shadows
1 = Shadow maps
SURFACE
Surface entity definitions consist of group codes that are common to all surface
types, followed by codes specific to the type.
3 Additional lines of proprietary data (if previous group 1 string is greater than 255 characters)
(optional)
71 Number of U isolines
72 Number of V isolines
Extruded Surface
The following group codes apply to extruded surfaces. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
SURFACE | 133
Extruded Surface group codes
Group code Description
90 Class ID
40 Transform matrix of extruded entity (16 reals; row major format; default = identity matrix)
45 Twist angle
48 Scale factor
46 Transform matrix of sweep entity (16 reals; row major format; default = identity matrix)
47 Transform matrix of path entity (16 reals; row major format; default = identity matrix)
Lofted Surface
The following group codes apply to lofted surfaces. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
40 Transform matrix of loft entity (16 reals; row major format; default = identity matrix)
Revolved Surface
The following group codes apply to revolved surfaces. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
90 ID of revolve entity
42 Transform matrix of revolved entity (16 reals; row major format; default = identity matrix)
Swept Surface
The following group codes apply to swept surfaces. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
90 ID of sweep entity
90 ID of path entity
40 Transform matrix of sweep entity (16 reals; row major format; default = identity matrix)
41 Transform matrix of path entity (16 reals; row major format; default = identity matrix)
45 Twist angle
48 Scale factor
46 Transform matrix of sweep entity (16 reals; row major format; default = identity matrix)
47 Transform matrix of path entity (16 reals; row major format; default = identity matrix)
5 Entity handle
310 Data for proxy entity graphics (multiple lines; 256-character maximum per line)
91 Number of rows
TABLE | 139
Table group codes
Group code Description
92 Number of columns
172 Cell flag value; this value is repeated, 1 value per cell
173 Cell merged value; this value is repeated, 1 value per cell
174 Boolean flag indicating if the autofit option is set for the cell; this value is repeated, 1 value per
cell
175 Cell border width (applicable only for merged cells); this value is repeated, 1 value per cell
176 Cell border height ( applicable for merged cells); this value is repeated, 1 value per cell
145 Rotation value (real; applicable for a block-type cell and a text-type cell)
344 Hard pointer ID of the FIELD object. This applies only to a text-type cell. If the text in the cell
contains one or more fields, only the ID of the FIELD object is saved. The text string (group
codes 1 and 3) is ignored
1 Text string in a cell. If the string is shorter than 250 characters, all characters appear in code 1.
If the string is longer than 250 characters, it is divided into chunks of 250 characters. The chunks
are contained in one or more code 3 codes. If code 3 codes are used, the last group is a code
1 and is shorter than 250 characters. This value applies only to text-type cells and is repeated,
1 value per cell
3 Text string in a cell, in 250-character chunks; optional. This value applies only to text-type cells
and is repeated, 1 value per cell
340 Hard-pointer ID of the block table record. This value applies only to block-type cells and is re-
peated, 1 value per cell
144 Block scale (real). This value applies only to block-type cells and is repeated, 1 value per cell
179 Number of attribute definitions in the block table record (applicable only to a block-type cell)
331 Soft pointer ID of the attribute definition in the block table record, referenced by group code
179 (applicable only for a block-type cell). This value is repeated once per attribute definition
300 Text string value for an attribute definition, repeated once per attribute definition and applicable
only for a block-type cell
64 Value for the color of cell content; override applied at the cell level
63 Value for the background (fill) color of cell content; override applied at the cell level
69 True color value for the top border of the cell; override applied at the cell level
65 True color value for the right border of the cell; override applied at the cell level
66 True color value for the bottom border of the cell; override applied at the cell level
68 True color value for the left border of the cell; override applied at the cell level
TABLE | 141
Table group codes
Group code Description
279 Lineweight for the top border of the cell; override applied at the cell level
275 Lineweight for the right border of the cell; override applied at the cell level
276 Lineweight for the bottom border of the cell; override applied at the cell level
278 Lineweight for the left border of the cell; override applied at the cell level
283 Boolean flag for whether the fill color is on; override applied at the cell level
289 Boolean flag for the visibility of the top border of the cell; override applied at the cell level
285 Boolean flag for the visibility of the right border of the cell; override applied at the cell level
286 Boolean flag for the visibility of the bottom border of the cell; override applied at the cell level
288 Boolean flag for the visibility of the left border of the cell; override applied at the cell level
280 Flag for whether the title is suppressed; override applied at the table entity level
281 Flag for whether the header row is suppressed; override applied at the table entity level
7 Text style name (string); override applied at the table entity level. There may be one entry for
each cell type
140 Text height (real); override applied at the table entity level. There may be one entry for each
cell type
170 Cell alignment (integer); override applied at the table entity level. There may be one entry for
each cell type
63 Color value for cell background or for the vertical, left border of the table; override applied at
the table entity level. There may be one entry for each cell type
64 Color value for cell content or for the horizontal, top border of the table; override applied at
the table entity level. There may be one entry for each cell type
65 Color value for the horizontal, inside border lines; override applied at the table entity level
66 Color value for the horizontal, bottom border lines; override applied at the table entity level
68 Color value for the vertical, inside border lines; override applied at the table entity level
69 Color value for the vertical, right border lines; override applied at the table entity level
283 Flag for whether background color is enabled (default = 0); override applied at the table entity
level. There may be one entry for each cell type:
0 = Disabled
1 = Enabled
274-279 Lineweight for each border type of the cell (default = kLnWtByBlock); override applied at the
table entity level. There may be one group for each cell type
284-289 Flag for visibility of each border type of the cell (default = 1); override applied at the table entity
level. There may be one group for each cell type:
0 = Invisible
1 = Visible
Group code 178 is a flag value for a virtual edge. A virtual edge is used when
a grid line is shared by two cells. For example, if a table contains one row and
two columns and it contains cell A and cell B, the central grid line contains
the right edge of cell A and the left edge of cell B. One edge is real, and the
TABLE | 143
other edge is virtual. The virtual edge points to the real edge; both edges have
the same set of properties, including color, lineweight, and visibility.
TEXT
The following group codes apply to text entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
40 Text height
72 Horizontal text justification type (optional, default = 0) integer codes (not bit-coded)
0 = Left; 1= Center; 2 = Right
3 = Aligned (if vertical alignment = 0)
4 = Middle (if vertical alignment = 0)
21, 31 DXF: Y and Z values of second alignment point (in OCS) (optional)
73 Vertical text justification type (optional, default = 0): integer codes (not bit-coded):
0 = Baseline; 1 = Bottom; 2 = Middle; 3 = Top
See the Group 72 and 73 integer codes table for clarification
The following table describes the group codes 72 (horizontal alignment) and
73 (vertical alignment) in greater detail.
If group 72 and/or 73 values are nonzero then the first alignment point values
are ignored and AutoCAD calculates new values based on the second alignment
point and the length and height of the text string itself (after applying the
TEXT | 145
text style). If the 72 and 73 values are zero or missing, then the second
alignment point is meaningless.
TOLERANCE
The following group codes apply to tolerance entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
TRACE
The following group codes apply to trace entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
UNDERLAY
The following group codes apply to underlays. In addition to the group codes
described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
UNDERLAY | 147
Please note that UNDERLAY group codes are common to DWFUNDERLAY
and DGNUNDERLAY. The differentiation between DWFUNDERLAY and DGN
UNDERLAY occurs in group code 0, defining the object name.
10,20,30 The X,Y, and Z coordinates of the insertion point of the underlay.
These are OCS/ECS coordinates
50 Rotation Angle (in OCS/ECS. CCW from the coordinate system X axis
and around the Z axis)
280 Flags
1 = Clipping is on
2 = Underlay is on
4 = Monochrome
8 = Adjust for background
16 = Clip is inside mode
11, 21 Repeating: 2d points in OCS/ECS. If only two, then they are the lower
left and upper right corner points of a clip rectangle. If more than
two, then they are the vertices of a clipping polygon
10 Location point (in OCS when 2D, and WCS when 3D)
DXF: X value; APP: 3D point
20, 30 DXF: Y and Z values of location point (in OCS when 2D, and WCS when 3D)
42 Bulge (optional; default is 0). The bulge is the tangent of one fourth the included angle for an
arc segment, made negative if the arc goes clockwise from the start point to the endpoint. A
bulge of 0 indicates a straight segment, and a bulge of 1 is a semicircle
70 Vertex flags:
1 = Extra vertex created by curve-fitting
2 = Curve-fit tangent defined for this vertex. A curve-fit tangent direction of 0 may be omitted
from DXF output but is significant if this bit is set
4 = Not used
8 = Spline vertex created by spline-fitting
16 = Spline frame control point
32 = 3D polyline vertex
64 = 3D polygon mesh
128 = Polyface mesh vertex
VERTEX | 149
Vertex group codes
Group code Description
Every vertex that is part of a polyface mesh has its vertex flag 128 bit set. If
the entity supplies the coordinate of a vertex of the mesh, its 64 bit is set as
well, and the 10, 20, 30 groups give the vertex coordinate. The vertex index
values are determined by the order in which the vertex entities appear within
the polyline, with the first being numbered 1.
If the vertex defines a face of the mesh, its vertex flags group has the 128 bit
set but not the 64 bit. In this case, the 10, 20, 30 (location) groups of the face
entity are irrelevant and are always written as 0 in a DXF file. The vertex
indexes that define the mesh are given by 71, 72, 73, and 74 group codes, the
values of which specify one of the previously defined vertexes by index. If the
index is negative, the edge that begins with that vertex is invisible. The first
0 vertex marks the end of the vertices of the face.
VIEWPORT
The following group codes apply to viewport entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
69 Viewport ID
14 Snap spacing
DXF: X value; APP: 2D point
15 Grid spacing
DXF: X value; APP: 2D point
VIEWPORT | 151
Viewport group codes
Group code Description
50 Snap angle
331 Frozen layer object ID/handle (multiple entries may exist) (optional)
340 Hard-pointer ID/handle to entity that serves as the viewport's clipping boundary (only present
if viewport is non-rectangular)
345 ID/handle of AcDbUCSTableRecord if UCS is a named UCS. If not present, then UCS is unnamed
VIEWPORT | 153
Viewport group codes
Group code Description
346 ID/handle of AcDbUCSTableRecord of base UCS if UCS is orthographic (79 code is non-zero).
If not present and 79 code is non-zero, then base UCS is taken to be WORLD
146 Elevation
335 Soft pointer reference to viewport object (for layer VP property override)
343 Soft pointer reference to viewport object (for layer VP property override)
344 Soft pointer reference to viewport object (for layer VP property override)
NOTE The ZOOM XP factor is calculated with the following formula: group_41
/ group_45 (or pspace_height / mspace_height).
WIPEOUT
The following group codes apply to wipeout entities. In addition to the group
codes described here, see Common Group Codes for Entities on page 61. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
90 Class version
11 U-vector of a single pixel (points along the visual bottom of the image, starting at the insertion
point) (in WCS)
DXF: X value; APP: 3D point
12 V-vector of a single pixel (points along the visual left side of the image, starting at the insertion
point) (in WCS)
DXF: X value; APP: 3D point
WIPEOUT | 155
Wipeout group codes
Group code Description
XLINE | 157
158
OBJECTS Section
7
This chapter presents the group codes that apply to nongraphical objects. These codes are
found in the OBJECTS section of a DXF™ file and are used by AutoLISP® and ObjectARX®
applications in entity definition lists.
Object Ownership
The root owner of most objects appearing in the OBJECTS section is the named
object dictionary, which is, therefore, always the first object that appears in this
section. Objects that are not owned by the named object dictionary are owned
by other entities, objects, or symbol table entries. Objects in this section may
be defined by AutoCAD® or by applications with access to ObjectARX® API.
The DXF names of application-defined object types should always be associated
with a class name in the CLASS section of the DXF file, or else the object record
cannot be bound to the application that will interpret it.
As with other dictionaries, the named-object dictionary record consists solely
of associated pairs of entry names and hard ownership pointer references to the
associated object.
To avoid name collision between objects, developers should always use their
registered developer prefix for their entries.
159
Common Group Codes for Objects
The following table shows group codes that apply to virtually all nongraphical
objects. When you refer to a table of group codes by object type, a list of codes
associated with a specific object, keep in mind that the codes shown here can
also be present. Some of the group codes are included with an object only if
the object has nondefault values for those group code properties. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
0 Object type
5 Handle
application- Codes and values within the 102 groups are application defined (optional)
defined codes
102 “{ACAD_REACTORS” indicates the start of the AutoCAD persistent reactors group. This group
exists only if persistent reactors have been attached to this object (optional)
102 “{ACAD_XDICTIONARY” indicates the start of an extension dictionary group. This group exists
only if persistent reactors have been attached to this object (optional)
91 DXF: Application object's class ID. Class IDs are based on the order of the class in the CLASSES
section. The first class is given the ID of 500, the next is 501, and so on
310 DXF: Binary object data (multiple entries can appear) (optional)
95 DXF: Object drawing format when it becomes a proxy (a 32-bit unsigned integer):
Low word is AcDbDwgVersion
High word is MaintenanceReleaseVersion
The 92 field is not used for AcDbProxyObject. Objects of this class never have
graphics.
ACDBDICTIONARYWDFLT
The following group codes are used by ACDBDICTIONARYWDFLT objects. In
addition to the group codes described here, see Common Group Codes for
ACAD_PROXY_OBJECT | 161
Objects on page 160. For information about abbreviations and formatting used
in this table, see Formatting Conventions in This Reference on page 2.
5 Handle
281 Duplicate record cloning flag (determines how to merge duplicate entries):
0 = Not applicable
1 = Keep existing
2 = Use clone
3 = <xref>$0$<name>
4 = $0$<name>
5 = Unmangle name
340 Hard pointer to default object ID/handle (currently only used for plot style dictionary's default
entry, named “Normal”)
ACDBPLACEHOLDER
The following group codes are used by the ACDBPLACEHOLDER objects. In
addition to the group codes described here, see Common Group Codes for
5 Handle
DATATABLE
The following group codes are used by the DATATABLE objects. In addition
to the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
DATATABLE | 163
DATATABLE group codes
Group code Description
70 Version
90 Number of columns
1 Table name
71 Boolean value
93 Integer value
40 Double value
3 String value
DICTIONARY
The following group codes are used by DICTIONARY objects. In addition to
the group codes described here, see Common Group Codes for Objects on
5 Handle
280 Hard-owner flag. If set to 1, indicates that elements of the dictionary are to be treated as hard-
owned
281 Duplicate record cloning flag (determines how to merge duplicate entries):
0 = Not applicable
1 = Keep existing
2 = Use clone
3 = <xref>$0$<name>
4 = $0$<name>
5 = Unmangle name
350 Soft-owner ID/handle to entry object (one for each entry) (optional)
DICTIONARY | 165
DICTIONARYVAR
The following group codes are used by DICTIONARYVAR objects. In addition
to the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
1 Value of variable
DIMASSOC
The following group codes are used by DIMASSOC objects. In addition to the
group codes described here, see Common Group Codes for Objects on page
5 Handle
330 Soft-pointer ID
90 Associativity flag
1 = First point reference
2 = Second point reference
4 = Third point reference
8 = Fourth point reference
DIMASSOC | 167
DIMASSOC group codes
Group code Description
12 = Parallel
13 = Start point
FIELD
The following group codes are used by FIELD objects. In addition to the group
codes described here, see Common Group Codes for Objects on page 160. For
1 Evaluator ID
331 Object ID used in the field code (AcDbSoftPointerId); repeats for the
number of object IDs used in the field code
6 Key string for the field data; a key-field pair is repeated for the number
of data sets in the field
92 Binary data buffer size (if data type of field value is binary)
FIELD | 169
FIELD group codes
Group code Description
GEODATA
The following group codes are used by GEODATA objects. In addition to the
group codes described here, see Common Group Codes for Objects on page
160. For information about abbreviations and formatting used in this table,
see Formatting Conventions in This Reference on page 2.
11,21,31 Reference point in coordinate system coordinates, valid only when coordinate type is Local
Grid.
40 Horizontal unit scale, factor which converts horizontal design coordinates to meters by multi-
plication.
41 Vertical unit scale, factor which converts vertical design coordinates to meters by multiplication.
91 Horizontal units per UnitsValue enumeration. Will be kUnitsUndefined if units specified by hori-
zontal unit scale is not supported by AutoCAD enumeration.
92 Vertical units per UnitsValue enumeration. Will be kUnitsUndefined if units specified by horizontal
unit scale is not supported by AutoCAD enumeration.
210,220,230 Up direction
96 Number of faces
GEODATA | 171
GEODATA group codes
Group code Description
GROUP
The following group codes are used by GROUP objects. In addition to the
group codes described here, see Common Group Codes for Objects on page
160. For information about abbreviations and formatting used in this table,
see Formatting Conventions in This Reference on page 2.
5 Handle
102 Start of persistent reactors group; always “{ACAD_REACTORS” (persistent reactors group appears
in all dictionaries except the main dictionary)
330 Soft-pointer ID/handle to owner dictionary. For GROUP objects this is always the ACAD_GROUP
entry of the named object dictionary
The IDBUFFER object is a utility object that is just a list of references to objects.
IMAGEDEF
The following group codes are used by IMAGEDEF objects. In addition to the
group codes described here, see Common Group Codes for Objects on page
160. For information about abbreviations and formatting used in this table,
see Formatting Conventions in This Reference on page 2.
5 Handle
330 Soft-pointer ID/handle to IMAGEDEF_REACTOR object (multiple entries; one for each instance)
90 Class version 0
IDBUFFER | 173
IMAGEDEF group codes
Group code Description
IMAGEDEF_REACTOR
The following group codes are used by IMAGEDEF_REACTOR objects. In
addition to the group codes described here, see Common Group Codes for
Objects on page 160. For information about abbreviations and formatting used
in this table, see Formatting Conventions in This Reference on page 2.
5 Handle
90 Class version 2
5 Handle
LAYER_FILTER
The following group codes are used by LAYER_FILTER objects. In addition to
the group codes described here, see Common Group Codes for Objects on
LAYER_INDEX | 175
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
LAYOUT
The following group codes are used by LAYOUT objects. In addition to the
group codes described here, see Common Group Codes for Objects on page
160. For information about abbreviations and formatting used in this table,
see Formatting Conventions in This Reference on page 2.
5 Handle
plotsettings ob- For group codes and descriptions following the AcDbPlotSettings marker, see PLOTSETTINGS
ject group codes on page 189
1 Layout name
71 Tab order. This number is an ordinal indicating this layout's ordering in the tab control that is
attached to the AutoCAD drawing frame window. Note that the “Model” tab always appears
as the first tab regardless of its tab order
10 Minimum limits for this layout (defined by LIMMIN while this layout is current)
DXF: X value; APP: 2D point
11 Maximum limits for this layout (defined by LIMMAX while this layout is current):
DXF: X value; APP: 2D point
12 Insertion base point for this layout (defined by INSBASE while this layout is current):
DXF: X value; APP: 3D point
14 Minimum extents for this layout (defined by EXTMIN while this layout is current):
DXF: X value; APP: 3D point
15 Maximum extents for this layout (defined by EXTMAX while this layout is current):
LAYOUT | 177
LAYOUT group codes
Group code Description
DXF: X value; APP: 3D point
146 Elevation
13 UCS origin
DXF: X value; APP: 3D point
16 UCS X-axis
DXF: X value; APP: 3D vector
17 UCS Y axis
DXF: X value; APP: 3D vector
330 ID/handle to this layout's associated paper space block table record
331 ID/handle to the viewport that was last active in this layout when the layout was current
345 ID/handle of AcDbUCSTableRecord if UCS is a named UCS. If not present, then UCS is unnamed
346 ID/handle of AcDbUCSTableRecord of base UCS if UCS is orthographic (76 code is non-zero).
If not present and 76 code is non-zero, then base UCS is taken to be WORLD
5 Handle
330 Soft-pointer ID/handle to owner dictionary. For LIGHTLIST objects, this is always the ACAD_LIGHT
entry of the named object dictionary
90 Version number
90 Number of lights
MATERIAL
The following group codes are used by MATERIAL objects. In addition to the
group codes described here, see Common Group Codes for Objects on page
LIGHTLIST | 179
160. For information about abbreviations and formatting used in this table,
see Formatting Conventions in This Reference on page 2.
5 Handle
102 Start of persistent reactors group; always “{ACAD_REACTORS” (The persistent reactors group
appears in all dictionaries except the main dictionary.)
330 Soft-pointer ID/handle to owner dictionary. For MATERIAL objects, this is always the
ACAD_MATERIAL entry of the named object dictionary.
40 Ambient color factor (real, default = 1.0; valid range is 0.0 to 1.0)
41 Diffuse color factor (real, default = 1.0; valid range is 0.0 to 1.0)
43 Transform matrix of diffuse map mapper (16 reals; row major format; default = identity matrix)
45 Specular color factor (real, default = 1.0; valid range is 0.0 to 1.0)
MATERIAL | 181
MATERIAL group codes
Group code Description
170 Auto transform method of specular map mapper (bitset; default = 1):
1 = No auto transform
2 = Scale mapper to current entity extents; translate mapper to entity origin
4 = Include current block transform in mapper transform
47 Transform matrix of specular map mapper (16 reals; row major format; default = identity matrix)
174 Auto transform method of reflection map mapper (bitset; default = 1):
1 = No auto transform
2 = Scale mapper to current entity extents; translate mapper to entity origin
49 Transform matrix of reflection map mapper (16 reals; row major format; default = identity
matrix)
178 Auto transform method of opacity map mapper (bitset; default = 1):
1 = No auto transform
2 = Scale mapper to current entity extents; translate mapper to entity origin
4 = Include current block transform in mapper transform
142 Transform matrix of opacity map mapper (16 reals; row major format; default = identity matrix)
MATERIAL | 183
MATERIAL group codes
Group code Description
272 Auto transform method of bump map mapper (bitset; default = 1):
1 = No auto transform
2 = Scale mapper to current entity extents; translate mapper to entity origin
4 = Include current block transform in mapper transform
144 Transform matrix of bump map mapper (16 reals; row major format; default = identity matrix)
276 Auto transform method of refraction map mapper (bitset; default = 1):
147 Transform matrix of refraction map mapper (16 reals; row major format; default = identity
matrix)
464 Luminance
MATERIAL | 185
MATERIAL group codes
Group code Description
300 GenProcName
291 GenProcValBool
271 GenProcValInt
469 GenProcValReal
301 GenProcValText
292 GenProcTableEnd
62 GenProcValColorIndex
420 GenProcValColorRGB
430 GenProcValColorName
148 Translucence
90 Self-Illuminaton
468 Reflectivity
93 Illumination Model
94 Channel Flags
MLINESTYLE
The following group codes are used by MLINESTYLE objects. In addition to
the group codes described here, see Common Group Codes for Objects on
5 Handle
102 Start of persistent reactors group; always “{ACAD_REACTORS” (persistent reactors group
appears in all dictionaries except the main dictionary)
330 Soft-pointer ID/handle to owner dictionary. For MLINESTYLE objects this is always the
ACAD_MLINESTYLE entry of the named object dictionary
70 Flags (bit-coded):
1 =Fill on
2 = Display miters
16 = Start square end (line) cap
32 = Start inner arcs cap
64 = Start round (outer arcs) cap
256 = End square (line) cap
512 = End inner arcs cap
1024 = End round (outer arcs) cap
71 Number of elements
49 Element offset (real, no default). Multiple entries can exist; one entry for each element
MLINESTYLE | 187
MLINESTYLE group codes
Group code Description
62 Element color (integer, default = 0). Multiple entries can exist; one entry for each element
6 Element linetype (string, default = BYLAYER). Multiple entries can exist; one entry for each
element
The 2 group codes in mline entities and MLINESTYLE objects are redundant
fields. These groups should not be modified under any circumstances, although
it is safe to read them and use their values. The correct fields to modify are
Mline The 340 group in the same object, which indicates the proper
MLINESTYLE object.
OBJECT_PTR
The following group codes are used by OBJECT_PTR objects. In addition to
the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
5 Handle
4 Paper size
PLOTSETTINGS | 189
PLOTSETTINGS group codes
Group code Description
73 Plot rotation:
0 = No rotation
1 = 90 degrees counterclockwise
76 ShadePlot mode:
0 = As Displayed
1 = Wireframe
2 = Hidden
3 = Rendered
PLOTSETTINGS | 191
PLOTSETTINGS group codes
Group code Description
Only applied when the ShadePlot resolution level is set to 5 (Custom)
147 A floating point scale factor that represents the standard scale value
specified in code 75
RASTERVARIABLES
The following group codes are used by RASTERVARIABLES objects. In addition
to the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
330 Soft-pointer ID/handle to owner dictionary. For a RASTERVARIABLES object, this is always the
ACAD_IMAGE_VARS entry of the named object dictionary
90 Class version 0
72 AutoCAD units for inserting images. This is what one AutoCAD unit is equal to for the purpose
of inserting and scaling images with an associated resolution:
0 = None; 1 = Millimeter; 2 = Centimeter
3 = Meter; 4 = Kilometer; 5 = Inch
6 = Foot; 7 = Yard; 8 = Mile
RENDER
Render related group codes.
RENDERENVIRONMENT
The following group codes are used by RENDERENVIRONMENT objects. In
addition to the group codes described here, see Common Group Codes for
Objects on page 160. For information about abbreviations and formatting used
in this table, see Formatting Conventions in This Reference on page 2.
5 Handle
330 Soft-pointer ID/handle to owner dictionary. For a RENDERENVIRONMENT object, this is always
the ACAD_RENDER_ENVIRONMENT entry of the named object dictionary
90 Class version 1
RENDER | 193
RENDERENVIRONMENT group codes
Group code Description
280, 280, 280 Fog color; Red, green, and blue channel values
40, 40 Near and Far distance as a percentage of the distance between the camera and the far clipping
plane
MENTALRAYRENDERSETTINGS
The following group codes are used by MENTALRAYRENDERSETTINGS objects.
In addition to the group codes described here, see Common Group Codes for
Objects on page 160. For information about abbreviations and formatting used
in this table, see Formatting Conventions in This Reference on page 2.
5 Handle
90 Class version 1
90 Class version 1
40, 40, 40, 40 Sampling contrast color; Red, green, blue, and alpha channel values
70 Shadow mode
0 = Simple
1 = Sort
2 = Segment
290 Shadow map flag; applies only to lights using mapped shadows
90, 90, 90 Ray tracing depth for reflections, refractions, and maximum depth
MENTALRAYRENDERSETTINGS | 195
MENTALRAYRENDERSETTINGS group codes
Group code Description
90 Photons/sample count
90, 90, 90 Global illumination photo trace depth for reflections, refractions, and maximum depth
70 Diagnostic mode
0 = Off
1 = Grid
2 = Photon
4 = BSP
40 Grid size
90 Tile size
70 Tile order
0 = Hilbert
1 = Spiral
2 = Left to right
3 = Right to left
4 = Top to bottom
5 = Bottom to top
90 Memory limit
RENDERGLOBAL
The following group codes are used by RENDERGLOBAL objects. In addition
to the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
330 Soft-pointer ID/handle to owner dictionary. For a RENDERGLOBAL object, this is always the
ACAD_RENDER_GLOBAL entry of the named object dictionary
RENDERGLOBAL | 197
RENDERGLOBAL group codes
Group code Description
90 Class version 2
90 Render procedure:
0 = View
1 = Crop
2 = Selection
90 Render destination
0 = Render Window
1 = Viewport
90 Image width
90 Image height
SECTION
Section manager and section settings group codes.
5 Handle
90 Number of sections
Section Settings
The following group codes apply to SECTIONSETTINGS objects. For
information about abbreviations and formatting used in this table, see
Formatting Conventions in This Reference on page 2.
5 Handle
90 Section type
1 “SectionTypeSettings” marker
90 Section type
330 Soft-pointer ID/handle to source objects (repeats for number of source objects)
3 “SectionTypeSettingsEnd” marker
90 Section type
91 Geometry count
92 Bitflags
63 Color data
8 Layer name
6 Linetype name
40 Linetype scale
1 Plotstyle name
70 Face transparency
71 Edge transparency
41 Hatch angle
42 Hatch scale
43 Hatch spacing
SPATIAL_INDEX
The following group codes are used by SPATIAL_INDEX objects. In addition
to the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
SPATIAL_FILTER
The following group codes are used by SPATIAL_FILTER objects. In addition
to the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
10 Clip boundary definition point (in OCS) (always 2 or more) based on an xref scale of 1
DXF: X value; APP: 2D point
11 Origin used to define the local coordinate system of the clip boundary
DXF: X value; APP: 3D point
SPATIAL_FILTER | 203
SPATIAL_FILTER group codes
Group code Description
21, 31 Origin used to define the local coordinate system of the clip boundary
DXF: Y and Z values
40 4x3 transformation matrix written out in column major order. This matrix is the inverse of the
original block reference (insert entity) transformation. The original block reference transformation
is the one that is applied to all entities in the block when the block reference is regenerated
(always 12 entries)
40 4x3 transformation matrix written out in column major order. This matrix transforms points
into the coordinate system of the clip boundary (12 entries)
SORTENTSTABLE
The following group codes are used by SORTENTSTABLE objects. In addition
to the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
If the SORTENTS Regen flag (bit-code value 16) is set, AutoCAD regenerates
entities in ascending handle order. When the DRAWORDER command is used,
a SORTENTSTABLE object is attached to the *Model_Space or *Paper_Space
block's extension dictionary under the name ACAD_SORTENTS. The
SORTENTSTABLE object related to this dictionary associates a different handle
with each entity, which redefines the order in which the entities are
regenerated.
TABLESTYLE
The following group codes are used by TABLESTYLE objects. In addition to
the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
5 Handle
102 Start of persistent reactors group; always “{ACAD_REACTORS” (The persistent reactors group
appears in all dictionaries except the main dictionary.)
330 Soft-pointer ID/handle to owner dictionary. For TABLESTYLE objects, this code is always the
ACAD_TABLESTYLE entry of the named object dictionary
TABLESTYLE | 205
TABLESTYLE group codes
Group code Description
70 FlowDirection (integer):
0 = Down
1 = Up
71 Flags (bit-coded)
The following group codes are repeated for every cell in the table
274-279 Lineweight associated with each border type of the cell (default = kLnWtByBlock)
284-289 Flag for visibility associated with each border type of the cell (default = 1):
0 = Invisible
1 = Visible
64-69 Color value associated with each border type of the cell (default = BYBLOCK)
UNDERLAYDEFINITION
The following group codes apply to UNDERLAYDEFINITION symbol table
entries. In addition to the group codes described here, see Common Group
Codes for Symbol Table Entries on page 37. For information about
abbreviations and formatting used in this table, see Formatting Conventions
in This Reference on page 2.
5 Handle
UNDERLAYDEFINITION | 207
UNDERLAYDEFINITION group codes
Group Description
Code
2 Underlay Name
VISUALSTYLE
The following group codes apply to VISUALSTYLE objects. For information
about abbreviations and formatting used in this table, see Formatting
Conventions in This Reference on page 2.
5 Handle
2 Description
70 Type
90 Face modifiers
0 = No modifiers
1 = Opacity
2 = Specular
62, 63 Color
91 Edge style
VISUALSTYLE | 209
VISUALSTYLE group codes
Group code Description
92 Edge modifiers
66 Edge color
76 Edge width
77 Edge overhang
78 Edge jitter
44 Brightness
5 Handle
90 Number of bytes of binary chunk data (contained in the group code 310 records that follow)
310 DXF: Binary object data (multiple entries containing VBA project data)
WIPEOUTVARIABLES
The following group codes are used by WIPEOUTVARIABLES objects. In
addition to the group codes described here, see Common Group Codes for
Objects on page 160. For information about abbreviations and formatting used
in this table, see Formatting Conventions in This Reference on page 2.
5 Handle
VBA_PROJECT | 211
WIPEOUTVARIABLES group codes
Group code Description
330 Soft-pointer ID/handle to owner dictionary. For a WIPEOUTVARIABLES object, this is always the
ACAD_IMAGE_VARS entry of the named object dictionary
90 Class version 0
XRECORD
The following group codes are common to all xrecord objects. In addition to
the group codes described here, see Common Group Codes for Objects on
page 160. For information about abbreviations and formatting used in this
table, see Formatting Conventions in This Reference on page 2.
280 Duplicate record cloning flag (determines how to merge duplicate entries):
0 = Not applicable
1 = Keep existing
2 = Use clone
3 = <xref>$0$<name>
4 = $0$<name>
5 = Unmangle name
Xrecord objects are used to store and manage arbitrary data. They are composed
of DXF group codes with “normal object” groups (that is, non-xdata group
codes), ranging from 1 through 369 for supported ranges. This object is similar
in concept to xdata but is not limited by size or order.
XRECORD | 213
214
THUMBNAILIMAGE
Section 8
This chapter presents the group codes that are found in the THUMBNAILIMAGE section of
a DXF™ file. This section exists only if a preview image has been saved with the DXF file.
90 The number of bytes in the image (and subsequent binary chunk re-
cords)
310 Preview image data (multiple lines; 256 characters maximum per
line)
215
216
Drawing Interchange File
Formats 9
This appendix describes the various file formats AutoCAD® uses to interchange drawing data
with other applications. The formats presented are Drawing Interchange File (DXF™), binary
DXF, Slide (SLD), and the Slide Library (SLB) file formats.
DXF files can be either ASCII or binary format. Because ASCII DXF files are more common
than the binary format, the term DXF file is used to refer to ASCII DXF files and the term binary
DXF file is used for the binary format.
217
It may be helpful to produce a DXF file from a small drawing, print it, and
refer to it while reading the information presented in this section.
The overall organization of a DXF file is as follows:
■ BLOCKS section. Contains block definition and drawing entities that make
up each block reference in the drawing.
■ THUMBNAILIMAGE section. Contains the preview image data for the drawing.
This section is optional.
If you use the Select Objects option of the SAVE or SAVEAS command, the
ENTITIES section of the resulting DXF file contains only the entities you select.
0 End of table
ENDTAB
70
1001
1040
70
40
.4 Text height
41
71
42
...
102
330
330
102
1001
1070
45
1001
APP_2
1004
18A5B3EF2C199A
' two lines at a time, all should be fine. However, to make your
' code more reliable, you should add some additional error and
' other checking.
'
Function ReadCodes() As Variant
Dim codeStr, valStr As String
Line Input #1, codeStr
Line Input #1, valStr
' Trim the leading and trailing space from the code
ReadCodes = Array(Trim(codeStr), valStr)
End Function
■ The entire HEADER section can be omitted if you don't set header variables.
■ Any of the tables in the TABLES section can be omitted if you don't need
to make entries, and the entire TABLES section can be dropped if nothing
in it is required.
■ If you define any linetypes in the LTYPE table, this table must appear before
the LAYER table.
■ If no block definitions are used in the drawing, the BLOCKS section can
be omitted.
■ If present, the BLOCKS section must appear before the ENTITIES section.
As long as a properly formatted item appears on the line on which the data
is expected, DXFIN accepts it. (Of course, string items should not have leading
spaces unless these are intended to be part of the string.) This BASIC program
takes advantage of this flexibility in input format and does not generate a file
exactly like one generated by AutoCAD.
In the case of an error in using DXFIN to load, AutoCAD reports the error with
a message indicating the nature of the error and the last line processed in the
DXF file before the error was detected. This may not be the line on which the
error occurred, especially in the case of errors such as the omission of required
groups.
Following the sentinel are pairs (group, value) as in an ASCII DXF file but
represented in binary form. The group code is a 2-byte binary value (1 byte
in DXF files prior to AutoCAD Release 14), and the value that follows is one
of the following:
■ A 2-byte integer with the least significant byte first and the most significant
byte last
The type of data following a group is determined from the group code by the
same rules used in decoding ASCII DXF files. Translation of angles to degrees
and dates to fractional Julian date representation is performed for binary files
as well as for ASCII DXF files. The comment group, 999, is not used in binary
DXF files.
Extended data group codes are represented in binary DXF as a single byte with
the value 255, followed by a 2-byte integer value containing the actual group
code, followed by the actual value.
Extended data long values (group code 1071) occupy 4 bytes of data. Extended
data binary chunks (group code 1004) are represented as a single-byte unsigned
integer length, followed by the specified number of bytes of chunk data. For
example, to transfer an extended data long group, the following values would
appear, occupying 1, 2, and 4 bytes respectively.
255 Escape group code
1071 True group code
999999 Value for the 1071 group code
SAVEAS writes binary DXF files with the same file type (.dxf) as for ASCII DXF
files. The OPEN and INSERT commands automatically recognize a binary file
by means of its sentinel string. You need not identify it as a binary file.
If the OPEN and INSERT commandsencounter an error in a binary DXF file,
AutoCAD reports the byte address within the file where the error was detected.
Slide Files
NOTE This information is for experienced programmers, and is subject to change
without notice.
AutoCAD slide files are screen images written by the MSLIDE command and
read by the VSLIDE command. This section describes the format of slide files
for the benefit of developers who wish to incorporate support for slides into
their programs.
A slide file consists of a header portion (31 bytes) and one or more data records
of variable length. All coordinates and sizes written to the slide file reflect the
drawing area of the display device from which the slide was created, with
Aspect ratio 4 Drawing area aspect ratio (horizontal size/vertical size in inches), scaled by
10,000,000. This value is always written with the least significant byte first
Test number 2 A number (1234 hex) used to determine whether all 2-byte values in the slide
were written with the high-order byte first (Intel 8086-family CPUs) or the low-
order byte first (Motorola 68000-family CPUs)
Data records follow the header. Each data record begins with a 2-byte field
whose high-order byte is the record type. The remainder of the record may
be composed of 1-byte or 2-byte fields as described in the following table. To
determine whether the 2-byte fields are written with the high-order byte first
or the low-order byte first, examine the Test number field of the header that
is described in the previous table.
00-7F 8 Vector The from-X coordinate for an ordinary vector. From-Y, to-X, and to-Y
follow, in that order, as 2-byte values. The from- point is saved as the
last point
FB 5 Offset vec- The low-order byte and the following three bytes specify the endpoints
tor (from-X, from-Y, to-X, to-Y) of a vector, in terms of offsets (-128 to +127)
from the saved last point. The adjusted from- point is saved as the last
point for use by subsequent vectors
FD 6 Solid fill The low-order byte is always zero. The following two 2-byte values
specify the X and Y coordinates of one vertex of a polygon to be solid-
filled. Three to ten such records occur in sequence. A Solid fill record
with a negative Y coordinate indicates the start or end of such a flood
sequence. In the start record, the X coordinate indicates the number of
vertex records to follow
FE 3 Common This is a vector starting at the last point. The low-order byte and the
endpoint following byte specify to-X and to-Y in terms of offsets (-128 to +127)
vector from the saved last point. The adjusted to- point is saved as the last
point for use by subsequent vectors
FF 2 New color Subsequent vectors are to be drawn using the color number indicated
by the low-order byte
If a slide contains any vectors at all, a New color record will be the first data
record. The order of the vectors in a slide and the order of the endpoints of
those vectors may vary.
For example, the following is an annotated hex dump of a simple slide file
created on an IBM PC/AT with an IBM Enhanced Graphics Adapter. The slide
consists of a white diagonal line from the lower-left corner to the upper-right
corner of the drawing area, a green vertical line near the lower-left corner,
and a small red rectangle at the lower-left corner.
Aspect ratio 8 Drawing area aspect ratio (horizontal size/vertical size in inches), written as a
floating-point number
Note that the old-format header does not contain a test number field. The
floating-point aspect ratio value and all 2-byte integers are written in the
native format of the CPU that was used to create the file (for 8086-family
CPUs, IEEE double-precision, and low-order byte first). Old-format slide files
are not portable across machine types, but they can be read by any version of
AutoCAD running on the same CPU type as the CPU with which the slide
was created.
Database Objects
AutoCAD® drawings consist largely of structured containers for database objects.
Database objects each have the following features:
■ A handle whose value is unique to the drawing/DXF file, and is constant for
the lifetime of the drawing. This format has existed since AutoCAD Release
10, and as of AutoCAD Release 13, handles are always enabled.
■ An optional xdata table, as entities have had since AutoCAD Release 11.
Symbol tables and symbol table records are database objects and, thus, have a
handle. They can also have xdata and persistent reactors in their DXF records.
■ Soft-pointer handle
■ Hard-pointer handle
239
■ Soft-owner handle
■ Hard-owner handle
NOTE If you use 1005 xdata group codes to store handles, they are treated as
soft-pointer handles, which means that when groups of objects are copied or
inserted into another drawing, references between the involved objects are
translated. Although 1005 xdata items are always returned as handles in AutoLISP
and ObjectARX, all of the reference handle group code ranges are represented as
“entity names” in AutoLISP and as ads_name structures in ObjectARX.
Arbitrary Handles
Arbitrary handles are distinct in that they are not translated to
session-persistent identifiers internally, or to entity names in AutoLISP, and
so on. They are stored as handles. When handle values are translated in
drawing-merge operations, arbitrary handles are ignored.
In all environments, arbitrary handles can be exchanged for entity names of
the current drawing by means of the handent functions. A common usage of
arbitrary handles is to refer to objects in external DXF and DWG files.
Subclass Markers
When filing a stream of group data, a single object may be composed of several
filer members, one for each level of inheritance where filing is done. Since
derived classes and levels of inheritance can evolve separately, the data of
each class filer member must be segregated from other members. This is
achieved using subclass markers.
All class filer members are expected to precede their class-specific portion of
instance data with a “subclass” marker—a 100 group code followed by a string
with the actual name of the class. This does not affect the state needed to
define the object's state, but it provides a means for the DXF file parsers to
direct the group codes to the corresponding application software.
For example, an object that has data from different derived classes would be
represented as follows:
Extended Data
Extended data (xdata) is created by AutoLISP or ObjectARX applications. If
an entity contains extended data, it follows the entity's normal definition
data. The group codes 1000 through 1071 describe extended data. The
following is an example of an entity containing extended data in DXF format.
Normal entity definition data:
The group code 1001 indicates the beginning of extended data. In contrast
to normal entity data, with extended data the same group code can appear
multiple times, and order is important.
Extended data is grouped by registered application name. Each registered
application group begins with a 1001 group code, with the application name
as the string value. Registered application names correspond to APPID symbol
table entries.
An application can use as many APPID names as needed. APPID names are
permanent, although they can be purged if they aren't currently used in the
drawing. Each APPID name can have no more than one data group attached
to each entity. Within an application group, the sequence of extended data
groups and their meaning is defined by the application.
String 1000 Strings in extended data can be up to 255 bytes long (with the
256th byte reserved for the null character)
Application name 1001 Application names can be up to 31 bytes long (the 32nd byte is
also a string reserved for the null character)
value
NOTE Do not add a 1001 group into your extended data because
AutoCAD assumes it is the beginning of a new application exten-
ded data group
Control string 1002 An extended data control string can be either “{”or “}”. These
braces enable applications to organize their data by subdividing
the data into lists. The left brace begins a list, and the right brace
terminates the most recent list. Lists can be nested
When AutoCAD reads the extended data for a particular applica-
tion, it checks to ensure that braces are balanced
Layer name 1003 Name of the layer associated with the extended data
Binary data 1004 Binary data is organized into variable-length chunks. The maxim-
um length of each chunk is 127 bytes. In ASCII DXF files, binary
data is represented as a string of hexadecimal digits, two per
binary byte
3 reals 1010, 1020, Three real values, in the order X, Y, Z. They can be used as a point
1030 or vector record. AutoCAD never alters their value
World space posi- 1011, 1021, Unlike a simple 3D point, the world space coordinates are moved,
tion 1031 scaled, rotated, and mirrored along with the parent entity to
which the extended data belongs. The world space position is
also stretched when the STRETCH command is applied to the
parent entity and this point lies within the select window
World space dis- 1012, 1022, Also a 3D point that is scaled, rotated, and mirrored along with
placement 1032 the parent (but is not moved or stretched)
World direction 1013, 1023, Also a 3D point that is rotated and mirrored along with the parent
1033 (but is not moved, scaled, or stretched)
Distance 1041 A real value that is scaled along with the parent entity
Scale factor 1042 Also a real value that is scaled along with the parent. The differ-
ence between a distance and a scale factor is application-defined
For some entities, the OCS is equivalent to the WCS, and all points (DXF
groups 10-37) are expressed in world coordinates. See the following table.
3D entities such as line, point, 3dface, 3D These entities do not lie in a particular plane. All points are expressed
polyline, 3D vertex, 3D mesh, 3D mesh in world coordinates. Of these entities, only lines and points can be
vertex extruded. Their extrusion direction can differ from the world Z axis
2D entities such as circle, arc, solid, trace, These entities are planar in nature. All points are expressed in object
text, attrib, attdef, shape, insert, 2D coordinates. These entities can be extruded. Their extrusion direction
polyline, 2D vertex, lwpolyline, hatch, can differ from the world Z axis
image
Dimension Some of a dimension's points are expressed in WCS and some in OCS
Once AutoCAD has established the OCS for a given entity, the OCS works as
follows: The elevation value stored with an entity indicates how far to shift
the XY plane along the Z axis (from the WCS origin) to make it coincide with
the plane that contains the entity. How much of this is the user-defined
elevation is unimportant.
Any 2D points entered through the UCS are transformed into the
corresponding 2D points in the OCS, which is shifted and rotated with respect
to the UCS.
These are a few ramifications of this process:
■ You cannot reliably find out what UCS was in effect when an entity was
acquired.
■ When you enter the XY coordinates of an entity in a given UCS and then
do a SAVEAS, you probably won't recognize those XY coordinates in the
DXF file. You must know the method by which AutoCAD calculates the
X and Y axes in order to work with these values.
■ The elevation value stored with an entity and output in DXF files is a sum
of the Z-coordinate difference between the UCS XY plane and the OCS XY
Here we are looking for the arbitrary X and Y axes to go with the normal N.
They will be called Ax and Ay. N could also be called Az (the arbitrary Z axis)
as follows:
If (abs (Nx) < 1/64) and (abs (Ny) < 1/64) then
Ax = Wy X N (where “X” is the cross-product operator).
Otherwise,
Ax = Wz X N.
Scale Ax to unit length.
251 | Index
group codes in 57 control strings 7
and writing a DXF file 229 conventions used in this reference 2
blocks, anonymous 57 coordinate systems associated with entity
body group codes 77 types 248
Boolean flags, group code range 4 CSHADOW Header variable 13
borders (in tables), group codes 142
boundary path data for hatch entities 90
boundary path data for hatch entities, D
group codes 90 database objects 239
bump maps, group codes 183 DATATABLE group codes 163
binary DXF files 1, 217, 232 default class values by DXF record name
and C++ class name 32
C deleted items in symbol tables 35
DGNUNDERLAY 147
C++ class names, default class values 32 diameter dimension group codes 82
CECOLOR DXF header variable 12 dictionaries, named object 159
CELTSCALE DXF header variable 12 DICTIONARY group codes 164
CELTYPE DXF header variable 12 DICTIONARYVAR group codes 166
CELWEIGHT DXF header variable 12 diffuse color, group codes 180
CEPSNID DXF header variable 12 diffuse maps, group codes 180
CEPSNTYPE DXF header variable 12 DIMADEC DXF header variable 13
CHAMFERA DXF header variable 12 DIMALT DXF header variable 13
CHAMFERB DXF header variable 12 DIMALTD DXF header variable 13
CHAMFERC DXF header variable 12 DIMALTF DXF header variable 13
CHAMFERD DXF header variable 12 DIMALTRND DXF header variable 13
child fields, group codes 169 DIMALTTD DXF header variable 13
circle group codes 77 DIMALTTZ DXF header variable 13
CLASSES section DIMALTU DXF header variable 13
about 31, 218 DIMALTZ DXF header variable 13
default class values by DXF record DIMAPOST DXF header variable 14
name and C++ class DIMASO DXF header variable 14
name 32 DIMASSOC DXF header variable 14
group codes in 32 DIMASZ DXF header variable 14
CLAYER DXF header variable 12 DIMATFIT DXF header variable 14
CMLJUST DXF header variable 12 DIMAUNIT DXF header variable 14
CMLSCALE DXF header variable 13 DIMAZIN DXF header variable 14
CMLSTYLE DXF header variable 13 DIMBLK DXF header variable 15
codes, group. See group codes (DXF files) DIMBLK1 DXF header variable 15
color styles (in tables), group codes 206 DIMBLK2 DXF header variable 15
column headings (in tables), suppression DIMCEN DXF header variable 15
of 206 DIMCLRD DXF header variable 15
columns and rows (in tables), group DIMCLRE DXF header variable 15
codes 140 DIMCLRT DXF header variable 15
comments, group code 4, 9 DIMDEC DXF header variable 15
common entity group codes 61 DIMDLE DXF header variable 15
control character handling 219 DIMDLI DXF header variable 15
252 | Index
DIMDSEP DXF header variable 15 DIMTOFL DXF header variable 17
dimension entities, coordinate systems DIMTOH DXF header variable 17
associated with 248 DIMTOL DXF header variable 17
dimension group codes 78 DIMTOLJ DXF header variable 17
aligned 80 DIMTP DXF header variable 18
angular 83 DIMTSZ DXF header variable 18
common 78 DIMTVP DXF header variable 18
diameter 82 DIMTXSTY DXF header variable 18
linear 81 DIMTXT DXF header variable 18
ordinate 85 DIMTZIN DXF header variable 18
radial 82 DIMUPT DXF header variable 18
rotated 81 DIMZIN DXF header variable 18
dimension style overrides 86 DISPSILH DXF header variable 18
DIMEXE DXF header variable 15 DRAGVS Header variable 18
DIMEXO DXF header variable 15 drawing interchange file formats
DIMFAC DXF header variable 15 ASCII DXF 217
DIMGAP DXF header variable 15 binary DXF 217, 232
DIMJUST DXF header variable 15 Slide (SLD) 233
DIMLDRBLK DXF header variable 16 Slide Library (SLB) 237
DIMLFAC DXF header variable 16 DWFUNDERLAY 147
DIMLIM DXF header variable 16 DWGCODEPAGE DXF header
DIMLUNIT DXF header variable 16 variable 18
DIMLWD DXF header variable 16 DXF
DIMLWE DXF header variable 16 conventions
DIMPOST DXF header variable 16 group code ranges 3
DIMRND DXF header variable 16 group codes in numerical
DIMSAH DXF header variable 16 order 5
DIMSCALE DXF header variable 16 file parsers, subclass markers
DIMSD1 DXF header variable 16 and 241
DIMSD2 DXF header variable 17 files. See ASCII DXF files\
DIMSE1 DXF header variable 17 format
DIMSE2 DXF header variable 17 about 1
DIMSHO DXF header variable 17 header variables 11
DIMSOXD DXF header variable 17 interface programs, writing
DIMSTYLE (example) 227
table handle code 36 record names, default class
DIMSTYLE DXF header variable 17 values 32
DIMSTYLE group codes 39 DXF files
DIMSTYLE table handle code 35 DXF header variables in 11
DIMTAD DXF header variable 17 group codes. See group codes (DXF
DIMTDEC DXF header variable 17 files)
DIMTFAC DXF header variable 17 See also ASCII DXF files\
DIMTIH DXF header variable 17 DXF format, objects vs. entities in 2
DIMTIX DXF header variable 17 DXF header variables, in DXF files 11
DIMTM DXF header variable 17 DXFIN considerations for writing DXF
DIMTMOVE DXF header variable 17 files 232
Index | 253
E field value, data type 169
filing a stream of group data, subclass
ECS. See object coordinate system markers and 241
ELEVATION DXF header variable 18 FILLETRAD DXF header variable 19
elevation value for entity FILLMODE DXF header variable 19
positioning 247 FINGERPRINTGUID DXF header
ellipse edge data for hatch entities 93 variable 19
ellipse group codes 86 fixed group codes 5
endblk group codes 59 flags
ENDCAPS DXF header variable 19 Boolean flag group code range 4
entities UCS flags 153
block 57 viewport status flags 152
coordinate systems associated floating-point numbers, group code
with 248 ranges 3
endblk 57
entity group codes vs. object
codes 2 G
group codes listed in numerical GEODATA group codes 170
order 5 getvar AutoLISP function 219
entities (DXF format) gradients, shifted/unshifted
end marker 2 definitions 90
group codes for 2, 61 graphical object group codes. See names of
FIELD objects 168 specific objects
hatch boundary path data 90 GRIDMODE revised VPORT header
hatches 87 variable 28
MATERIAL objects 179 GRIDUNIT revised VPORT header
TABLE objects 139 variable 28
TABLESTYLE objects 205 group codes (DXF files)
viewports 150 about 3, 217
vs. objects 2 arbitrary handle range 240
ENTITIES section ASCII DXF files and 219
about 61, 218 binary DXF files and 232
and writing a DXF file 230 for entities 2, 61
ENTITIES section (DXF files), about 2 FIELD objects 168
extension dictionary 243 hatch boundary path data 90
EXTMAX DXF header variable 19 hatches 87
EXTMIN DXF header variable 19 MATERIAL objects 179
EXTNAMES DXF header variable 19 TABLE objects 139
EXTRUDED SURFACE group codes 133 TABLESTYLE objects 205
extrusion direction, OCS properties viewports 150
for 247 for entities (graphical objects) 61
examples of 219
F fixed 5
formatting conventions for 2
FASTZ revised VPORT header variable 28 HEADER section codes 11
FIELD group codes 168 in numerical order 5
254 | Index
objects/entities and 2 I
ranges of 3
reference handle ranges 239 IDBUFFER group codes 173
values of image group codes 95
descriptions 5 IMAGEDEF group codes 173
type ranges 3 IMAGEDEF_REACTOR group codes 174
for xdata 246 INDEXCTL DXF header variable 20
group data, subclass markers and 241 inheritance levels for filer members,
GROUP group codes 172 subclass markers and 241
INSBASE DXF header variable 20
INSERT command
H ASCII control character handling
HALOGAP DXF header variable 19 and 219
handent functions (AutoLISP) 241 binary DXF files and 233
handles insert group codes 97
about 239 INSUNITS DXF header variable 20
arbitrary 240 integers
of dictionary objects 243 32-bit integer values 9
reference 239 group code ranges 3
HANDSEED DXF header variable 19 INTERFERECOLOR Header variable 20
hard references vs. soft references 240 INTERFEREOBJVS Header variable 20
hard-owner handles 8, 240 INTERFEREVPVS Header variable 20
hard-pointer handles 7–8, 239 INTERSECTIONC DXF header
hatch entities variable 20
boundary path data group codes 90 INTERSECTIOND DXF header
group codes 87 variable 20
hatch group codes 87
hatch pattern data 94 J
HEADER section
about 11, 218 JOINSTYLE DXF header variable 20
example of 219
group codes for revised VPORT
variables 28 K
group codes for saved DXF header key-field pair 169
variables 11
time/date variables, handling of 29
and writing a DXF file 229 L
HEADER section (DXF files), group
codes 11 LAYER group codes 43
HELIX group codes 94 LAYER_FILTER group codes 175
HIDETEXT DXF header variable 19 LAYER_INDEX group codes 175
HYPERLINKBASE DXF header LAYOUT group codes 176
variable 19 leader group codes 100
Light group codes 100
LIGHTLIST group codes 179
LIMCHECK DXF header variable 21
Index | 255
LIMMAX DXF header variable 21 O
LIMMIN DXF header variable 21
line edge data for hatch entities 92 object coordinate system (OCS) 247–248
line group codes 101 arbitrary axis algorithm and 249
linear dimension group codes 81 OBJECT_PTR group codes 188
lineweights, enum value 8 ObjectARX
LOFTED SURFACE group codes 135 group code 1005 xdata items
LTSCALE DXF header variable 21 and 241
LTYPE group codes 44 reference handles and 240
LUNITS DXF header variable 21 ObjectARX, reference handles and 240
LUPREC DXF header variable 21 objects
LWDISPLAY DXF header variable 21 object group codes vs. entity
lwpolyline group codes 102 codes 2
ownership of 159
objects (DXF format), vs. entities 2
M OBJECTS section
MATERIAL objects, group codes 179 about 159, 218
MAXACTVP DXF header variable 21 common group codes 160
MEASUREMENT DXF header variable 21 OBSCOLOR DXF header variable 21
MENTALRAYRENDERSETTINGS 194 OBSLTYPE DXF header variable 21
MENU DXF header variable 21 ole2frame entities, AutoLISP entnext
MIRRTEXT DXF header variable 21 function output (example) 121
mleader group codes 106 ole2frame group codes 119
mleaderstyle group codes 108 DXF output (example) 120
common 108 oleframe group codes 118
context data 111 opacity maps, group codes 183
leader line 115 OPEN command
leader node 115 ASCII control character handling
mline group codes 103 and 219
MLINESTYLE group codes 186 binary DXF files and 233
Model_Space block definition 59 ordinate dimension group codes 85
MSLIDE/VSLIDE commands 233 ORTHOMODE DXF header variable 22
mtext group codes 116 ownership pointers to extension
multileader group codes 106 dictionaries 239
ownership references vs. pointer
references 240
N
named object dictionary 159 P
nongraphical object group codes. See
names of specific objects Paper_Space block definition 59
normal vector, arbitrary axis algorithm pattern data for hatch entities 94
and 249 PDMODE DXF header variable 22
numerical order group codes 5 PDSIZE DXF header variable 22
PELEVATION DXF header variable 22
persistent inter-object reference
handles 239
256 | Index
persistent reactor tables 239, 243 Q
PEXTMAX DXF header variable 22
PEXTMIN DXF header variable 22 QTEXTMODE DXF header variable 24
PFACE command considerations 124
PINSBASE DXF header variable 22
PLIMCHECK DXF header variable 22 R
PLIMMAX DXF header variable 22 radial dimension group codes 82
PLIMMIN DXF header variable 22 ranges of group codes 3
PLINEGEN DXF header variable 22 RASTERVARIABLES group codes 192
PLINEWID DXF header variable 22 ray group codes 125
PLOTSETTINGS group codes 189 reading a DXF file (example) 227
point group codes 122 reference handles
pointer references vs. ownership hard vs. soft 240
references 240 pointer vs. ownership 240
polyface meshes in DXF 124 types of 239
polyline boundary data for hatch reflection maps, group codes 182
entities 91 refraction maps, group codes 184
polyline group codes 122 REGENMODE DXF header variable 24
polyface meshes and 124 region group codes 125
PROJECTNAME DXF header variable 23 RENDERENVIRONMENT group
PROXYGRAPHICS DXF header codes 193
variable 23 RENDERGLOBAL¶ 197
PSLTSCALE DXF header variable 23 REVOLVED SURFACE group codes 136
PSSTYLEMODE DXF header variable 23 rotated dimension group codes 81
PSVPSCALE DXF header variable 23 rows and columns (in tables), group
PUCSBASE DXF header variable 23 codes 143
PUCSNAME DXF header variable 23
PUCSORG DXF header variable 23
PUCSORGBACK DXF header variable 23 S
PUCSORGBOTTOM DXF header
variable 23 SAVE command
PUCSORGFRONT DXF header Binary option 232
variable 23 Select Objects option 218
PUCSORGLEFT DXF header variable 24 SAVEAS command
PUCSORGRIGHT DXF header ASCII control character handling
variable 24 and 219
PUCSORGTOP DXF header variable 24 binary DXF files and 233
PUCSORTHOREF DXF header Binary option 232
variable 24 Select Objects option 218
PUCSORTHOVIEW DXF header SECTION group codes¶ 126
variable 24 Section Type Settings group codes¶ 200–
PUCSXDIR DXF header variable 24 201
PUCSYDIR DXF header variable 24 SECTIONMANAGER group codes¶ 199
sequend group codes 127
SHADEDGE DXF header variable 24
SHADEDIF DXF header variable 24
Index | 257
SHADOWPLANELOCATION Header SURFACE group codes 133
variable 24 SURFTAB1 DXF header variable 25
shape group codes 127 SURFTAB2 DXF header variable 25
SKETCHINC DXF header variable 24 SURFTYPE DXF header variable 25
SKPOLY DXF header variable 25 SURFU DXF header variable 25
slide (SLD) files SURFV DXF header variable 25
about 233 SWEPT SURFACE group codes 137
data record types 234 symbol table entries
header format 233 common group codes 37
hex dump of (example) 235 structure of 35
old-format header 236 symbol tables
vectors and 234 common group codes 36
slide library (SLB) file format 237 deleted items and 35
SNAPANG revised VPORT header DIMSTYLE handle 35–36
variable 28 handles and 239
SNAPBASE revised VPORT header identifying 35
variable 28 structure of 35
SNAPISOPAIR revised VPORT header system variables, saved in DXF files 11
variable 28
SNAPMODE revised VPORT header
variable 28 T
SNAPSTYLE revised VPORT header TABLE group codes 139
variable 28 TABLES section
SNAPUNIT revised VPORT header about 35, 218
variable 28 example of 220
soft references vs. hard references 240 symbol table common group
soft-owner handles 8, 240 codes 36
soft-pointer handles 239–240 symbol table structure 35
solid group codes 89, 128 and writing a DXF file 229
SORTENTS DXF header variable 25 tables, group codes for 143
SORTENTSTABLE group codes 204 TABLESTYLE group codes 205
SPATIAL_FILTER group codes 203 tagged data 1
SPATIAL_INDEX group codes 202 TDCREATE DXF header variable 25
specular color, group codes 181 TDINDWG DXF header variable 25
specular maps, group codes 181 TDUCREATE DXF header variable 25
SPLFRAME DXF header variable 25 TDUPDATE DXF header variable 26
spline edge data for hatch entities 94 TDUSRTIMER DXF header variable 26
spline group codes 129 TDUUPDATE DXF header variable 26
SPLINESEGS DXF header variable 25 TEXT group codes 144
SPLINETYPE DXF header variable 25 text strings, group code range 4
SSECTIONSETTINGS group codes¶ 199 text style (in tables), group codes 206
strings, group code ranges 3 TEXTSIZE DXF header variable 26
STYLE group codes 46 TEXTSTYLE DXF header variable 26
subclass data marker 7 THICKNESS DXF header variable 26
subclass markers 241 THUMBNAIL section
SUN group codes 131–132 about 218
258 | Index
THUMBNAILIMAGE VIEWCTR revised VPORT header
group codes 215 variable 28
THUMBNAILIMAGE section VIEWDIR revised VPORT header
about 215 variable 29
TILEMODE DXF header variable 26 viewport entities
time/date variables, handling of 29 coordinate systems associated
tolerance group codes 146 with 248
trace group codes 146 group codes 150
TRACEWID DXF header variable 26 status field 151
TREEDEPTH DXF header variable 26 viewport group codes 150
VIEWSIZE revised VPORT header
variable 29
U VISRETAIN DXF header variable 27
UCS flags 153 Visual Basic programs (examples)
UCS group codes 47 for reading a DXF file 227
UCSBASE DXF header variable 26 for writing a DXF file 230
UCSNAME DXF header variable 26 VISUALSTYLE group codes¶ 208
UCSORG DXF header variable 26 VPORT group codes 51
UCSORGBACK DXF header variable 26 VPORT header variables, revised 28
UCSORGBOTTOM DXF header VSLIDE/MSLIDE commands 233
variable 26
UCSORGFRONT DXF header variable 26 W
UCSORGLEFT DXF header variable 26
UCSORGRIGHT DXF header variable 27 wipeout group codes 155
UCSORGTOP DXF header variable 27 WIPEOUTVARIABLES group codes 211
UCSORTHOREF DXF header variable 27 world coordinate system (WCS) 248
UCSORTHOVIEW DXF header WORLDVIEW DXF header variable 27
variable 27 writing a DXF file (example) 229
UCSXDIR DXF header variable 27
UCSYDIR DXF header variable 27
Underlay Definition group codes 207 X
underlay group codes 147 X and Y axes orientation
UNITMODE DXF header variable 27 calculations 248–249
user coordinate system (UCS) 248 X axis, arbitrary axis algorithm and 249
USERI1-5 DXF header variable 27 XCLIPFRAME DXF header variable 27
USERR1-5 DXF header variable 27 xdata
USRTIMER DXF header variable 27 and dimension entities 86
sample entity containing (DXF
V format) 243
xdata group codes 246
VBA_PROJECT group codes 211 binary DXF group codes 232
vectors, in slide files 234 XEDIT DXF header variable 28
VERSIONGUID DXF header variable 27 xline group codes 157
vertex group codes 149 XRECORD group codes 212
VIEW group codes 49 XY coordinates, working with 248
Index | 259
Y Z
Y axis, arbitrary axis algorithm and 249 Z axis
arbitrary axis algorithm and 249
OCS properties for 247
260 | Index