$DELOBJ 70 控制是否删除对象:0=删除,1=保留
$DIMALT 70 如果非零,则标注中执行换算单位
$DIMALTD 70 换算单位小数位数
$DIMALTF 40 换算单位比例因子
$DIMALTTD 70 换算单位标注的公差值的十进制小数位数
$DIMALTTZ 70 控制替换公差值的消零: 0=清除零英尺并精确到零英寸
1=包括零英尺并精确到零英寸
2=包括零英尺并清除零英寸
3=包括零英寸并清除零英尺
$DIMALTU 70 所有标注样式族成员(不包括角度)换算单位的单位格式:
1=科学;2=十进制;3=工程;4=建筑(堆叠);5=分数(堆叠);6=建筑;7=分数
$DIMALTZ 70 控制换算单位标注值的消零: 0=清除零英尺并精确到零英寸
1=包括零英尺并精确到零英寸
2=包括零英尺并清除零英寸
3=包括零英寸并清除零英尺
$DIMAPOST 1
$DIMASO 70
$DIMASZ 40
$DIMAUNIT 70
$DIMBLK 1
$DIMBLK 11
$DIMBLK 21
$DIMCEN 40
$DIMCLRD 70
$DIMCLRE 70
$DIMCLRT 70
$DIMDEC 70
$DIMDLE 40
$DIMDLI 40
$DIMEXE 40
$DIMEXO 40
$DIMFIT 70
$DIMGAP 40
$DIMJUST 70
替换标注后缀
1=创建关联标注,0=绘制独立图元
标注箭头的尺寸
角度标注的单位格式:0=十进制度数;1=度/分/秒;2=百分度;3=弧度;4=勘测
箭头块名
第一箭头块名
第二箭头块名
中心标记/中心线的尺寸
尺寸线颜色:范围为0=BYBLOCK,256=BYLAYER
尺寸界线颜色:范围为0=BYBLOCK,256=BYLAYER
标注文字颜色:范围为0=BYBLOCK,256=BYLAYER
主单位标注公差值的小数位数
尺寸线范围
尺寸线增量
尺寸界线范围
尺寸界线偏移
文本和箭头的放置;可能值:0到3
尺寸线的间距
水平标注文字位置: 0=在尺寸线上方且与尺寸界线间中心对正;
1=在尺寸线上方且与第一尺寸界线相邻;
2=在尺寸线上方且与第二尺寸界线相邻;
3=在第一尺寸界线上方且与之中心对正;
4=在第二尺寸界线上方且与之中心对正;
$DIMLFAC 40 线型测量比例因子
$DIMLIM 70 如果非零,则生成标注图形界限
$DIMPOST 1 基本标注后缀
$DIMRND 40 标注距离的舍入值
$DIMSAH 70 如果非零,则使用单独的箭头块
$DIMSCALE 40 全局标注比例因子
$DIMSD 170 控制是否清除第一尺寸线:0=不清除;1=清除
$DIMSD 270 控制是否清除第二尺寸线:0=不清除;1=清除
$DIMSE 170 如果非零,则清除第一尺寸界线
$DIMSE 270 如果非零,则清除第二尺寸界线
$DIMSHO 70 1=拖动后重新计算标注;0=拖动原图像
$DIMSOXD 70 如果非零,则清除外部尺寸尺寸线
$DIMSTYLE 2 标注样式名称
$DIMTAD 70 如果非零,则文字在尺寸线上方
$DIMTDEC 70 公差值的十进制数位数
$DIMTFAC 40 标注公差显示比例因子
$DIMTIH 70 如果非零,则文字在水平方向内
$DIMTIX 70 如果非零,则强制文字在尺寸线之间
$DIMTM 40 负公差
$DIMTOFL 70 如果非零,则当文字在范围外时,强制直线范围在尺寸界线之间
$DIMTOH 70 如果非零,则文字在水平方向之外
$DIMTOL 70 如果非零,则生成标注公差
$DIMTOLJ 70 公差值的垂直对正模式:0=顶端;1=中间;2=底端
$DIMTP 40 正公差
$DIMTSZ 40 标注标记尺寸:0=无标记
$DIMTVP 40 文字垂直位置
$DIMTXSTY 7 标注文字样式
$DIMTXT
$DIMTZIN
40 标注文字高度
70 控制公差值的消零: 0=清除零英尺并精确到零英寸
1=包括零英尺并精确到零英寸
2=包括零英尺并清除零英寸
3=包括零英寸并清除零英尺
$DIMUNIT 70 所有的标注样式族成员(角度除外)的单位格式:
1=科学;2=十进制;3=工程;
4=建筑(堆叠);5=分数(堆叠);
6=建筑;7=分数
$DIMUPT 70 用户放置文字的光标功能:0=只控制尺寸线位置:1=同时控制尺寸线和文字位置
$DIMZIN 70 控制主单位值的消零: 0=清除零英尺并精确到零英寸
1=包括零英尺并精确到零英寸
2=包括零英尺并清除零英寸
3=包括零英寸并清除零英尺
$DISPSILH 70 控制线框图模式中体对象轮廓曲线的显示:0=关;1=开
$DRAGMODE 70 0=关;1=开;2=自动
$DWGCODEPAGE 3图形代码页;
当新图形创建时,设置为系统代码页,但AutoCAD不作另外的维护。
$ELEVATION 40 命令ELEV设置的当前标高
$EXTMIN 10,20,30图形的X、Y和Z延伸到左下角(在WCS中)
$EXTMAX 10,20,30图形的X、Y和Z延伸到右上角(在WCS中)
$FILLETRAD 40 圆角半径
$FILLMODE 70 如果非零,则“填充”模式打开
$HANDLING 70 下一个可用句柄
$HANDSEED 5 下一个可用句柄
$INSBASE 10,20,30命令BASE设置的插入基点(在WCS中)
$LIMCHECK 70当检查图形界限时非零
$LIMMAX 10,20XY图形界限延伸至右上角(在WCS中)
$LIMMIN 10,20XY图形界限延伸至左下角(在WCS中)
$LTSCALE 40全局线型比例
$LUNITS 70坐标和距离的单位格式
$LUPREC 70坐标和距离的单位精度
$MAXACTVP 70设置要生成的视口数目的最大值
$MEASUREMENT 70设置图形单位:0=英制;1=公制
$MENU 1菜单文件名
$MIRRTEXT 70如果非零,则镜像文字
$ORTHOMODE 70如果非零,则打开“正交”模式
$OSMODE 70运行对象捕捉模式
$PDMODE 70点显示模式
$PDSIZE 40点显示尺寸
$PELEVATION 40当前图纸空间标高
$PEXTMAX 10,20,30图纸空间的X、Y和Z延伸的最大值
$PEXTMIN 10,20,30图纸空间的X、Y和Z延伸的最小值
$PICKSTYLE 70控制编组选择集和关联填充选择集:
0=无编组选择集和关联填充选择集;
1=有编组选择集;
2=有关联填充选择集;
3=有编组选择集和关联填充选择集
$PINSBASE 10,20,30图纸空间插入基点
$PLIMCHECK 70如果非零,则在图纸空间中检查图形界限
$PLIMMAX 10,20图纸空间中最大的X和Y图形界限
$PLIMMIN 10,20图纸空间中最小的X和Y图形界限
$PLINEGEN 70管理二维多段线顶点周围的线型图案的生成:
0=在多段线周围以连续图案生成线型;
1=每段多段线都以虚线开始和结束
$PLINEWID 40缺省的多段线宽度
$PROXYGRAPHICS 70控制代理对象图像的保存
$PSLTSCALE 70控制图纸空间线型比例:
0=无指定的线型比例;
1=由视口比例控制线型比例
$PUCSNAME 2当前图纸空间的UCS名
$PUCSORG 10,20,30当前图纸空间的UCS原点
$PUCSXDIR 10,20,30当前图纸空间的UCSX轴
$PUCSYDIR 10,20,30当前图纸空间的UCSY轴
$QTEXTMODE 70如果非零,则打开快速文字模式
$REGENMODE 70如果非零,则打开REGENAUTO模式
$SHADEDGE 700=面着色,边不突出显示;
1=面着色,边以黑色突出显示;
2=面不填充,边为图元颜色;
3=面为图元颜色,边为黑色
$SHADEDIF 70 环境/漫射光百分数,取值范围为1-100,缺省值为70
$SKETCHINC 40 徒手画记录增量
$SKPOLY 70 0=徒手画线条;1=徒手画多段线
$SPLFRAME 70 样条曲线控制多边形显示:1=开;0=关
$SPLINESEGS 70 每个样条曲线片的线段数
$SPLINETYPE 70 PEDIT样条曲线的曲线类型
$SURFTAB 170 在第一方向上的网格列表数目
$SURFTAB 270 在第二方向上的网格列表数目
$SURFTYPE 70 PEDIT平滑着色的表面类型
$SURFU 70 在M方向上的(PEDIT平滑着色的)表面密度
$SURFV 70 在N方向上的(PEDIT平滑着色的)表面密度
$TDCREATE 40 图形创建的日期/时间
$TDINDWG 40 图形的累计编辑时间
$TDUPDATE 40 图形最近一次更新的日期/时间
$TDUSRTIMER 40 用户流逝计时器
$TEXTSIZE 40 缺省文本高度
$TEXTSTYLE 7 当前文字样式名
$THICKNESS 40 命令ELEV设置的当前厚度
$TILEMODE 70 1与早期版本兼容;0不兼容
$TRACEWID 40 缺省宽线宽度
$TREEDEPTH 70 指定空间索引的最大深度
$UCSNAME 2 当前UCS名
$UCSORG 10,20,30当前UCS原点(在WCS中)
$UCSXDIR 10,20,30当前UCSX轴的方向(在WCS中)
$UCSYDIR 10,20,30当前UCSY轴的方向(在WCS中)
$UNITMODE 70低位设置=显示分数、英尺和英寸,以及输入格式中的检测角
$USERI 1-570供第三方开发者使用的五个整型变量
$USERR 1-540供第三方开发者使用的五个实型变量
$USRTIMER 700=计时器关;1=计时器开
$VISRETAIN 700=不保留外部参照依赖可见性设置;
1=保留外部参照依赖可见性设置;
$WORLDVIEW 701=在DVIEW/VPOINT期间设置UCS为WCS;
0=不修改UCS
下列表头变量出现在R11前的AutoCAD中,但现在对每个活动的视口都有单独的设置。当DXFIN从DXF文件中读取这些变量时,能识别它们。但如果带有*ACTIVE条目的VPORT符号表存在(任何由R11
或更高版本的AutoCAD生成的DXF文件中都存在),VPORT符号表条目中的值将替代这些表头变量。
修正的VPORT表头变量
变量组码说明
$FASTZOOM 70如果非零,则启用快速缩放
$GRIDMODE 70如果非零,则打开“栅格”模式
$GRIDUNIT 10,20栅格的X和Y间距
$SNAPANG 50捕捉栅格旋转角
$SNAPBASE 10,20捕捉/栅格基点(在UCS中)
$SNAPISOPAIR 70等轴测平面:0=左边,1=上端,2=右边
$SNAPMODE 70如果非零,则打开“捕捉”模式
$SNAPSTYLE 70捕捉样式:0=标准;1=等轴测
$SNAPUNIT 10,20捕捉栅格的X和Y间距
$VIEWCTR 10,20屏幕上当前视图的XY中心
$VIEWDIR 10,20,30视图方向(来自WCS中目标的方向)
$VIEWSIZE 40视图高度
日期/时间变量($TDCREATE和$TDUPDATE)以如下实数格式输出:
.
流逝计时器变量($TDINDWG和$TDUSRTIMER)具有相似的格式:
.
TABLES区域
本节描述的组码既出现在DXF文件中又被应用程序使用。TABLES区域中包括多个表,每个表中条目数目可变。AutoLISP和ARX应用程序在图元定义表中也使用这些组码。
如不作特殊说明,本节中所出现的组码都可以应用于DXF文件、AutoLISP应用程序和ARX应用程序。当组码说明对于应用程序和DXF文件有所不同时(或只适用于其中之一),在组码的说明前会有如下提示符:
APP用于应用程序的说明
DXF用于DXF文件的说明
如果组码说明对DXF文件和应用程序都适用,那么没有提示符;否则将显示适当的提示符。
DXF文件中的符号表
表的次序可以改变,但LTYPE表一般放在LAYER之前。每个表都由带有标签TABLE的组码0引入。其后是标识具体表(APPID、DIMSTYLE、LAYER、LTYPE、STYLE、UCS、VIEW、VPORT或BLOCK_RECORD)的组码2、组码5(句柄)、组码100(AcDbSymbolTable子类标记)和组码70(此组码用于指定其后表的最大条目数)。表名以大写字符形式输出。DIMSTYLE句柄使用组码105而不是组码5。
图形中的表可以包含已删除的条目,但这些条目不写入DXF文件,因此表头后的表条目数可能少于组码70所指定的数目。所以不要用组码70中的数字作为读取表的索引。读取DXF文件的程序会根据组码70中的数字分配一个足够大的数组来存储其后所有的表条目。
在每个表的表头后跟随着表条目。每个表条目包括指定条目类型的组码0(与表名称相同,如LTYPE或LAYER)、给出表条目名称的组码2、指定与表条目相关的标志的组码70和其他给出表条目值的组码组成。每个表条目的结尾都由带有组值ENDTAB的组码0标记。
下面是一个DXF文件中的TABLES区域的样例:
0 SECTION
2 TABLES 区域的开始
0 TABLE
2
5
70 相同的表组码,
对每一个条目重复
0
5
.
..表条目数据,对每一个表记录重复
0 表结束
0 TABLES区域的结束
符号表记录和符号表都是数据库对象。至少,在AutoCAD的所有主要用法中,这意味着符号表记录对象和符号表对象的组码2后都存在一个句柄。
DIMSTYLE表是系统中唯一使用句柄组码105的记录类型(以前它也使用组码5)。除非在DIMSTYLE表区域中,程序员一般不必留心此例外情况,因为只有在DIMSTYLE表区域中才会发生此例外情况。
符号表组码
下表列出了适用于所有符号表的组码:
适用于所有符号表的组码 组码说明
-1 APP:图元名(每次打开图形时改变)
0 对象类型(TABLE)
2 表名称
5 句柄
100 子类标记(AcDbSymbolTable)
70 表中的最大条目数。
符号表条目的公用组码
下表显示了适用于所有符号表的组码,可选的组码以灰色显示。当用户通过图元类型引用组码表时,应注意表中不仅包括与特定图元关联的组码,也会包括下表列出的组码。
适用于所有符号表条目的组码 组码说明
-1 APP:图元名(每次打开图形时改变)
0 图元类型(表名称)
5 句柄(除DIMSTYLE外的所有表)
105 句柄(只用于DIMSTYLE表)
102 应用程序定义的组码的开始"{application_name"。
例如,"{ACAD_REACTORS" //表示AutoCADPersistentreactors组的开始
//application-defined codes组102中的组码和组值由
//应用程序定义
//102组结束
"}"
100子类标记(AcDbSymbolTableRecord)
下表列出了当Persistentreactors被附着到对象上时输出的组码:
ACAD_REACTORS记录 组码说明
102 "{ACAD_REACTORS"表示AutoCADPersistentreactors组的开始
330 指向所有者词典的软键指针标识符/句柄
102 组结束"}"
下表列出了当扩展词典被附着到对象上时输出的组码:
ACAD_XDICTIONARY记录 组码说明
102 "{ACAD_XDICTIONARY"表示扩展词典组码的开始
360 指向所有者词典的硬键指针标识符/句柄
102 组结束"}"
公用组码70标志-位编码值的说明如下表。其他适用于LAYER、STYLE和VIEW表条目的组码70值则在另外的相关表中说明。
适用于所有表条目的组码70的位编码值
位编码值说明
16如果设置该位,表示表条目依赖于外部参照
32如果此位和位16都被设置,则表示所依赖的外部参照已被成功融入。
64如果设置该位,表示在上一次图形编辑时图形中至少有一个图元引用了该表条目。(此标志一般用于AutoCAD命令。大部分读取DXF
文件的程序将其忽略,对于写DXF文件的程序也无须设置它。)
APPID
下列组码适用于APPID符号表条目:
APPID组码 组码说明
100 子类标记(AcDbRegAppTableRecord)
2 用户提供的应用程序名(用于扩展数据)。此表条目维护所有已注册的应用程序名。
70 标准标志值(请参见符号表条目的公用组码!AL(`XREF_30203_al_u05_c',1)。):
1=如果设置,在执行SAVEASR12时不写入APPID所关联的外部数据。
注意因为在R13和R14的AutoCAD中ASE数据格式相同,
所以ASE应用程序名(ACADASER13)也相同。
BLOCK_RECORD
下列组码适用于BLOCK_RECORD符号表条目。
BLOCK_RECORD组码 组码说明
100 子类标记(AcDbBlockTableRecord)
2 块名称
DIMSTYLE
下列组码适用于DIMSTYLE符号表条目。关于DIMSTYLE符号表条目的详细信息,请参见AutoCAD命令参考中的附录B“系统变量”。
DIMSTYLE组码
组码说明
100子类标记(AcDbDimStyleTableRecord)
2标注样式名
70标准标志值(请参见符号表条目的公用组码!AL(`XREF_30203_al_u05_c',1)。)
3DIMPOST
4DIMAPOST
5DIMBLK
6DIMBLK1
7DIMBLK2
40DIMSCALE
41DIMASZ
42DIMEXO
43DIMDLI
44DIMEXE
45DIMRND
46DIMDLE
47DIMTP
48DIMTM
140DIMTXT
141DIMCEN
142DIMTSZ
143DIMALTF
144DIMLFAC
145DIMTVP
146DIMTFAC
147DIMGAP
71DIMTOL
72DIMLIM
73DIMTIH
74DIMTOH
75DIMSE1
76DIMSE2
77DIMTAD
78DIMZIN
170DIMALT
171DIMALTD
172DIMTOFL
173DIMSAH
174DIMTIX
175DIMSOXD
176DIMDLRD
177DIMCLRE
178DIMCLRT
270DIMUNIT
271DIMDEC
272DIMTDEC
273DIMALTU
274DIMALTTD
340被引用的STYLE对象的句柄(用于代替储存DIMTXSTY值)
275DIMAUNIT
280DIMJUST
281DIMSD1
282DIMSD2
283DIMTOLJ
284DIMTZIN
285DIMALTZ
286DIMALTTZ
287DIMFIT
288DIMUPT
LAYER
下列组码适用于LAYER符号表条目。
LAYER组码 组码说明
100 子类标记(AcDbSymbolTableRecord)
2 图层名
70 标准标志。(清参见符号表条目的公用组码!AL(`XREF_30203_al_u05_c',1)。)
除标准标志外,以下(位编码)值也适用于图层:
1=冻结图层,否则图层解冻;
2=在新视口中缺省设置为冻结图层;
4=锁定图层;
62 颜色数(如果为负则图层被关闭)
6 线型名
在执行DXFOUT时输出依赖于外部参照的图层。对于这些图层,DXF文件中的相关线型名始终为CONTINUOUS。
LTYPE
下列组码适用于LTYPE符号表条目。
LTYPE组码 组码说明
100 子类标记(AcDbLinetypeTableRecord)
2 线型名称。
70 标准标志(位编码值)。(请参见符号表条目的公用组码!AL(`XREF_30203_al_u05_c',1)。)
3 线型的描述文字。
72 对齐方式码;始终为65(A的ASCII码)。
73 线型元素数目。
40 图案总长度。
49 虚线、点或空间的长度(每个元素一个条目)。
74 复杂线型元素类型(每个元素一个条目):0=简单的;2=内嵌文字字符串;4=内嵌形;
75 复杂形的组码(如果组码74>0,每个元素一个条目)如果组码74=2,则值为1。
340 STYLE对象指针(如果组码74>0,每个元素一个条目)。
46 S=比例值(可选),可存在多个这样的条目。
50 R=旋转值(可选),可存在多个这样的条目。
44 X=x偏移值(可选),可存在多个这样的条目。
45 Y=y偏移值(可选),可存在多个这样的条目。
9 文字字符串(如果组码74=2,每个元素一个条目)。
执行函数tblsearch或tblnext时,并不返回组码74、75、340、46、50、44、45和9的值,因此用户需要使用函数tblobjname来获取这些组码的值。
STYLE
下列组码适用于STYLE符号表条目。
STYLE组码 组码说明
100 子类标记(AcDbTextStyleTableRecord)
2 样式名称
70 标准标志值(请参见符号表条目的公用组码!AL(`XREF_30203_al_u05_c',1)。):
40
41
50
71
42
3
4
STYLE表条目也可用于记录命令LOAD所需要的形文件。此时组码70的第一位(1)被设置且只有组码3(形文件名)有意义(但仍输出所有其他组码)。
UCS
下列组码适用于UCS符号表条目。
UCS组码
组码说明
100子类标记(AcDbUCSTableRecord)
2UCS名称
70标准标志值
10原点(用WCS表示)。DXF:X值;APP:三维点
20,30DXF:原点坐标的Y和Z值(用WCS表示)
11X轴方向(用WCS表示)。DXF:X值;APP:三维矢量
21,31DXF:X轴方向的Y和Z值(用WCS表示)
12Y轴方向(用WCS表示)。DXF:Y值;APP:三维矢量
22,32DXF:Y轴方向的Y和Z值(用WCS表示)
VIEW
下列组码适用于VIEW符号表条目。
VIEW组码
组码说明
100子类标记(AcDbViewTableRecord)
2视图名
70标准标志值(位编码值)
1=如果设置,则为图纸空间视图。
40视图高度(用DCS表示)
10视图中点(用DCS表示)。DXF:X值;APP:二维点
20DXF:视图中点的Y值(用DCS表示)
41视图宽度(用DCS表示)
11以目标为起点的视图方向(用WCS表示):X值;APP:三维矢量
21,31DXF:以目标为起点的视图方向的Y和Z值(用WCS表示)
12目标点(用WCS表示)。DXF:X值;APP:三维点
22,32DXF:目标点坐标的Y和Z值(用WCS表示)
42镜头长度
43前剪裁平面(与目标点的偏移)
44后剪裁平面(与目标点的偏移)
50扭曲角
71视图模式(请参见VIEWMODE系统变量)
VPORT
下列组码适用于VPORT符号表条目。
VPORT组码
1=如果设置,此条目描述一个形;4=垂直文本;
固定文字高度;如果高度不固定则值为0。
宽度因子
倾斜角
文字生成标志:2=文字反向(X轴方向镜像)4=文字倒置(Y轴方向镜像)
最后使用的高度
主字体文件名
大字体文件名;如果没有则为空
组码说明
100子类标记(AcDbViewportTableRecord)
2视口名
70标准标记值(请参见符号表条目的公用组码!AL(`XREF_30203_al_u05_c',1)。)
10视口左下角点。:X值;APP:二维点
20DXF:视口左下角点坐标的Y值
11视口右上角点。:X值;APP:二维点
21DXF:视口右上角点坐标的Y值
12视图中点(用DCS表示)。DXF:X值;APP:二维点
22DXF:视图中点坐标的Y值(用DCS表示)
13捕捉基点。DXF:X值;APP:二维点
23DXF:捕捉基点坐标的Y值
14捕捉间距的X和Y值。DXF:X值;APP:二维点
24DXF:捕捉间距X和Y值中的Y值。
15栅格间距的X和Y值。DXF:X值;APP:二维点
25DXF:栅格间距X和Y值中的Y值
16以目标点为起点的视图方向(用WCS表示):X值;APP:三维点
26,36DXF:以目标点为起点的视图方向的Y和Z值(用WCS表示)
17视图目标点(用WCS表示)。DXF:X值;APP:三维点
27,37DXF:视图目标点坐标的Y和Z值(用WCS表示)
40视图高度
41视口宽高比
42镜头长度
43前剪裁平面(与目标点的偏移)
44后剪裁平面(与目标点的偏移)
50捕捉旋转角
51视图扭曲角
68APP:状态字段(不保存在DXF中)
69APP:ID(不保存在DXF中)
71视图模式(请参见VIEWMODE系统变量)
72圆缩放百分比
73快速缩放设置
74UCSICON设置
75捕捉状态:开/关
76栅格状态:开/关
77捕捉样式
78捕捉ISOPAIR
VPORT表和其他表不同的是,它可以包含多个同名条目(表示一个多视口配置)。所有对应于活动视口配置的条目都具有*ACTIVE名称,其中第一个描述了当前视口。
CLASSES区域
本节描述的组码只出现在DXF文件中。
CLASSES区域存储了应用程序定义的类的信息,这些类的实例将会出现在数据库的BLOCKS、ENTITIES和OBJECTS
区域中。假定类定义在类的层次结构中是固定不变的。区域中的所有字段都是必需的。
下面是一个DXF文件中CLASSES区域的样例:
0 SECTION
2 CLASSES区域的开始
0
1
2
3
90
对每个条目重复
0CLASSES区域的结束
下表列出了CLASSES区域中每个条目所包含的组码:
CLASSES区域组码
组码说明
0DXF记录类名。此名称必须唯一。指明BLOCKS、ENTITIES和OBJECTS区域的开始,如果两个对象类型声明了同名的DXF
类名,AutoCAD会给它们加上不同的数字后缀,以使图形中的DXF类名唯一。
1C++类名。用于绑定定义对象类行为的软件,此名称唯一。值得注意的是,同一个C++类在不同的图形中的DXF名可能稍有不同。
2应用程序名。如果当前未加载本区域中列出的类定义,则此名称将显示在“警告”框中。
90类版本号。设置为最后一次存储该类实例时所加载类的版本号。
280“是代理”标志。如果此DXF文件创建时没有加载类,设置为1;否则设置为0。
281“是图元”标志。如果此类是从AcDbEntity类继承下来的且其实例可出现在BLOCKS或ENTITIES区域中,它设置为
1;如果为0,则其实例只能出现在OBJECTS区域中。
BLOCKS区域
本节描述的组码既出现在DXF文件中又被应用程序使用。对图形中每个块引用,在块区域中都有一个条目与之对应。
如不作特殊说明,本节中所出现的组码都可以同时应用于DXF文件、AutoLISP应用程序和ARX应用程序。当应用程序中的组码描述与DXF
文件中的组码描述不同(或只适用于其中之一)时,则在说明前有如下提示:
APP应用程序特定说明
DXF文件特定说明
如果组码描述对DXF文件和应用程序都适用,那么没有提示;否则将存在适当的提示。可选的组码以灰色显示。
DXF文件中的块
DXF文件中的BLOCKS区域包括所有的块定义,其中包含组成(图形中使用的)块(包括命令HATCH和关联标注生成的无名块)的图元。BLOCKS
区域中的图元格式与ENTITIES区域中的一样,且此区域中的所有图元都出现在BLOCK和ENDBLK图元之间。BLOCK和ENDBLK
图元只出现在BLOCKS区域中。虽然块定义可以包含插入图元,但块定义不允许被嵌套(即BLOCK和ENDBLK图元之间不允许出现另一对BLOCK和
ENDBLK图元)。
通常外部参照将作为块定义写入DXF文件中,除非文件中已经包含了指定该外部参照的路径和文件名的字符串(组码1)。
在每个块定义中,紧接着BLOCK记录出现的是块句柄和其他外部数据及persistentreactors,此句柄包含了该BLOCK
记录所储存的特定信息。因此每个块定义有如下记录次序:
下面是一个DXF文件中的BLOCKS区域的例子:
0
2BLOCKS区域的开始
0
5
8
2
70
10
20
30
3
1
开始每个块条目
(一个块图元定义)
0
...块中每个图元定义均对应一个条目
0
5
每个块条目的结束
(ENDBLK图元定义)
0BLOCKS区域的结束
BLOCK
下列组码适用于块图元。
Block组码
组码说明
0图元类型(BLOCK)
5句柄
102应用程序定义的组的开始"{application_name",
例如,"{ACAD_REACTORS"表示AutoCADPersistentreactors组的开始application-definedcodes组102中的组码和组值由应用程序定义102组结束"}"
100子类标记(AcDbEntity)
8图层名
100子类标记(AcDbBlockBegin)
2块名称
70“块类型”标志(位编码值,可被组合):
1=这是一个由图案填充、关联标注、其他内部操作或应用程序生成的无名块;
2=此块具有属性定义;
4=此块是一个外部参照(xref);
8=此块是一个外部参照覆盖;
16=此块依赖于外部参照;
32=是一个融入的外部参照或依赖于外部参照(输入时忽略之);
64=此定义被外部参照引用(输入时忽略之);
10基点。DXF:X值;APP:三维点
20,30DXF:基点坐标的Y和Z值
3块名称
1外部参照路径名(可选,只有在块是一个外部参照时存在)
创建块定义后,原先有效的UCS变为适合于块定义中所有图元的WCS。将移动这些图元的新原点以匹配块定义的基点,也将平移所有图元数据以适合新的WCS。
*MODEL_SPACE和*PAPER_SPACE块定义
现在,在BLOCKS区域中始终有两个额外的空定义,它们的标题分别为*MODEL_SPACE和*PAPER_SPACE。这样实际上是将模型空间和图纸空间视为内部块定义。考虑到兼容性,这些定义包含的图元也会出现在ENTITIES区域中。
模型空间和图纸空间图元分离
由于改进了内部组织机构,模型空间和图纸空间之间的交错将不再发生,而是先输出图纸空间图元,再输出模型空间图元。区分这些图元的标志为组码67。
ENDBLK
下列组码适用于ENDBLK对象
Endblk组码
组码说明
0图元类型(ENDBLK)
5句柄
102应用程序定义的组的开始"{application_name"。
例如,"{ACAD_REACTORS"表示AutoCADPersistentreactors组的开始
application-definedcodes组102中的组码和组值由应用程序定义
102组结束,"}"
100子类标记(AcDbBlockEnd)
OBJECTS区域
此节中的组码适用于非图形对象。这些出现在DXF文件的OBJECTS区域中的组码被图元定义表中的AutoLISP和ARX应用程序使用。
如不作特殊说明,本节中所出现的组码都可以应用于DXF文件、AutoLISP应用程序和ARX应用程序。当应用程序中的组码描述与DXF
文件中的组码描述不同(或只适用于其中之一)时,则在说明前有如下提示:
APP应用程序特定说明
DXFDXF文件特定说明
如果DXF文件中的组码描述与应用程序中的相同,那么没有提示,否则将存在适当的提示。可选的组码以灰色显示。
除了没有图形的或几何的意义外,对象与图元基本类似。所有那些非图元的,符号表记录的或符号表的对象都存储在此区域中。此区域通过所有关系描绘了一个具有对象的拓扑次序的同类堆,根据此关系,所有者始终出现在它们的所有对象的前面。
对象所有关系
出现在OBJECTS
区域中的大多数对象的根所有者被称为对象词典,所以始终只有第一对象出现在此区域中。不被对象词典所有的对象归其他图元、对象或符号表条目所有。此区域中的对象可以被
AutoCAD或被有权使用ARXAPI的应用对象定义。应用程序定义对象类型的DXF名称始终与一个DXF文件的CLASS
区域中的类名称联合在一起,否则对象记录不能被加进将要解释它的应用程序中。
当使用其他词典时,命名对象词典记录由条目名称对和参照关联对象的硬键所有关系指针独立组成。
为避免对象间的名称冲突,开发者应始终使用已注册的这些图元的开发前缀。
DXF文件中的对象组码
下面是DXF文件的对象区域的例子:
0
2OBJECTS区域的开始
0
5
命名对象词典的开始(根词典对象)
3
为每个条目重复
0
.
.
.对象数据组
0OBJECTS区域的结束
公用对象组码
下表显示的组码适用于所有实际的非图形图元(对象)。当用户通过图元类型引用组码表时,应注意表中不仅列出与特定图元关联的组码,也会列出下表所显示的组码。只当图元具有特性的非缺省值时,一些公用对象组码才被包括到图元中。当组码被忽略时,它的缺省值将出现在输入文件(当使用
DXFIN时)的第三列上,如果组码值等于缺省值,在输出(使用DXFOUT)时它将被忽略。
公用对象组码
组码说明
0对象类型
5句柄
102应用程序定义组码的开始"{application_name"。例如,"{ACAD_REACTORS"表示AutoCAD
Persistentreactors组的开始
application-definedcodes应用程序定义的组102中的组码和组值
102组的结束,"}"
如果persistentreactors已被附着到对象上,则下表显示的组码将被输出。
ACAD_REACTORS记录
组码说明
102"{ACAD_REACTORS"表示AutoCADPpersistentreactors组的开始
330所有着词典的软键指针标识符/句柄
102组的结束,"}"
如果扩展词典已被附着到对象上,则下表显示的组码将被输出。
ACAD_XDICTIONARY记录
组码说明
102"{ACAD_XDICTIONARY"表示扩展词典组的开始
360所有着词典的硬键指针标识符/句柄
102组的结束,"}"
ACAD_PROXY_OBJECT
下列组码适用于ACAD_PROXY_OBJECT对象。
Acad_proxy_object组码
组码说明
100DXF:子类标记(AcDbProxyObject)
90DXF:代理对象类ID(始终为499)
91DXF:应用程序对象类ID。类ID由CLASSES区域中的类的次序决定。第一个类的ID为500,下一个为501,依此类推。
93DXF:以位表示的对象数据的大小
310DXF:二进制对象数据(可在多个条目中出现)
330or340or350or360DXF:对象ID(可在多个条目中出现)
94DXF:0(表示对象ID区域的结束)
字段92不用于AcDbProxyObject。此类的对象没有图形。
DICTIONARY
下列组码由词典对象使用。
词典组码
组码说明
100子类标记(AcDbDictionary)
3条目名称(适用于每个条目)
350条目对象的句柄(适用于每个条目)
在词典中AutoCAD将诸如多线样式和组定义之类的条目作为对象来维护。下节描述在词典中被维护的AutoCAD
对象组码。但如果合适,其他应用程序可自由地创建和使用它们自己的词典。注意:在AutoCAD应用程序使用时,应保留前缀"ACAD_"。
DICTIONARYVAR
下列组码由DICTIONARYVAR对象使用。
DICTIONARYVAR组码
组码说明
0对象名称(DICTIONARYVAR)
5句柄
102persistentreactors组的开始;始终为"{ACAD_REACTORS"
330所有者词典的软键指针标识符/句柄(ACDBVARIABLEDICTIONARY)。
102persistentreactors组的结束;始终为"}"
100子类标记(词典变量)
280对象概要数(通常设置为0)
1变量值
在不需要向DXFHEADER区域中添加条目时,DICTIONARYVAR对象被AutoCAD用来作为在数据库中存储命名值的方法以达到
setvar/getvar的目的。通常作为DICTIONARYVAR
对象存储的系统变量有:DIMADEC、DIMDSEP、INDEXCTL、PROJECTNAME和XCLIPFRAME。
GROUP
下列组码由GROUP对象使用。
GROUP组码
组码说明
0对象名称(GROUP)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"(persistentreactors
组出现在除主词典之外的所有词典中)
330所有者词典的软键指针标识符/句柄。对于GROUP对象,此码始终是命名对象词典的ACAD_GROUP条目。
102persistentreactors组的结束,始终为"}"。
100子类标记(AcDbGroup)
300(对象)组说明
70“未命名”标志:1=未命名的;0=命名的;
71可选择性标志:1=可选择的;0=不可选择;
340(对象)组中图元的句柄(适用于每个对象的条目)
IDBUFFER
下列组码由IDBUFFER对象使用。
IDBUFFER组码
组码说明
0对象名称(IDBUFFER)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"。
330所有者词典的软键指针标识符/句柄。
102persistentreactors组的结束,始终为"}"。
100子类标记(AcDbIdBuffer)
330参照图元的软键指针(可以存在多条目)。
IDBUFFER对象是对象参照的表的使用使用工具对象。
IMAGEDEF
下列组码有IMAGEDEF对象使用。
IMAGEDEF组码
组码说明
0对象名称(IMAGEDEF)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"。
330ACAD_IMAGE_DICT词典的软键指针的标识符/句柄。
330IMAGEDEF_REACTOR对象的软键指针的标识符/句柄(多条目;适合于每个实例的条目)。
102persistentreactors组的结束,始终为"}"。
100子类标记(AcDbRasterImageDef)
90类版本。0=R14版本
1图像的文件名称
10以像素点表示的图像大小。DXF:U值;APP:二维点(U和V值)
20DXF:以像素点表示的图像大小的V值
11AutoCAD中一个像素的缺省大小。:U值;APP:二维点(U和V值)。
12DXF:像素大小的V值。
280“图像被加载”标志:0=为加载的;1=加载的;
281分辨率单位:0=无单位;2=厘米;5=英寸;
IMAGEDEF_REACTOR
下列组码由IMAGEDEF_REACTOR对象使用。
IMAGEDEF_REACTOR组码
组码说明
0对象名称(IMAGEDEF_REACTOR)
5句柄
100子类标记(AcDbRasterImageDefReactor)
90类版本号。2=R14版本
330适于关联图像对象的对象ID。
LAYER_INDEX
下列组码由LAYER_INDEX对象使用。
LAYER_INDEX组码
组码说明
0对象名称(LAYER_INDEX)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"。
330所有者词典的软键指针的标识符/句柄。
102persistentreactors组的结束,始终为"}"。
100子类标记(AcDbIndex)
40时间标志(Julian日期)
100子类标记(AcDbLayerIndex)
8图层名称(可以存在多条目)。
360IDBUFFER的硬键从属参照(可以存在多条目)
90在IDBUFFER中的条目数(可以存在多条目)
MLINESTYLE
下列组码由MLINESTYLE对象使用。
MLINESTYLE组码
组码说明
0对象名称(MLINESTYLE)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"(persistentreactors
组出现在除主词典以外的所有词典中)
330所有者词典的软键指针的标识符/句柄。对于MLINESTYLE对象,此组码始终为命名对象词典中的ACAD_MLINESTYLE条目。
102persistentreactors组的结束,始终为"}"。
100子类标记(AcDbMlineStyle)
2多线样式名称
70标志(位编码):
1=打开填充;
2=显示斜接;
16=开始矩形结束(直线)封口;
32=开始内弧封口;
64=开始圆(外弧)封口;
256=结束矩形(直线)封口;
512=结束内弧封口;
1024=结束圆(外弧)封口;
3样式说明(字符串,最大值为255字符)
62填充颜色(整型,缺省值=256)。可以存在多条目,适于每个元素的一个条目。
51起始角度(实型,缺省值为90度)
52结束角度(实型,缺省值为90度)
71元素的数目
49元素偏移(实型,无缺省值)。可以存在多条目,且为适于每个元素的一个条目。
62元素颜色(整型,缺省值=0)。可以存在多条目,且为适于每个元素的一个条目。
6元素线型(字符串,缺省值=BYLAYER)。可以存在多条目,且为适于每个元素的一个条目。
多线图元和多线样式对象中的组码2是多余的字段。虽然可以安全的读取这些组码及其关联值,但这些组码在任何情况下都不能被修改。这些字段修改如下:
多线
在相同对象中的组码340用于指定严格意义上的MLINESTYLE对象。
多线样式
MLINESTYLE词典中的组码3位于具有当前MLINESTYLE的图元名或句柄的组码350之前。
OBJECT_PTR
下列组码由OBJECT_PTR对象使用。
OBJECT_PTR组码
组码说明
0对象名称(OBJECT_PTR)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"。
330所有者词典的软键指针的标识符/句柄。
102persistentreactors组的结束,始终为"}"。
1001开始ASE外部数据(ACADASER13)
RASTERVARIABLES
下列组码由RASTERVARIABLES对象使用。
RASTERVARIABLES组码
组码说明
0对象名称(RASTERVARIABLES)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"。
330所有者词典的软键指针标识符/句柄。对于RASTERVARIABLES对象,此组码始终为命名对象词典中的ACAD_IMAGE_VARS
条目。
102persistentreactors组的结束,始终为"}"。
100子类标记(AcDbRasterVariables)
90类版本。0=R14
70“显示图像边框”标志:0=无边框;1=显示边框;
71图像显示质量(只用于屏幕):0=草图;1=高分辨率;
72插入图像的AutoCAD单位。此AutoCAD单位适用于关联到分辨率的插入和缩放图像操作:
0=无;1=毫米;2=厘米;3=米;4=公里;
5=英寸;6=英尺;7=码;8=英里;
SPATIAL_INDEX
下列组码由SPATIAL_INDEX使用。
SPATIAL_INDEX组码
组码说明
0对象名称(SPATIAL_INDEX)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"。
330所有者词典的软键指针标识符/句柄。
102persistentreactors组的结束,始终为"}"。
100子类标记(AcDbIndex)
40时间标志(Julian日期)
100子类标记(AcDbSpatialIndex)
在写入DXF文件时,SPATIAL_INDEX始终为空,所以此对象可被忽略。
SPATIAL_FILTER
下列组码由SPATIAL_FILTER对象使用。
SPATIAL_FILTER组码
组码说明
0对象名称(SPATIAL_FILTER)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"。
330所有者词典的软键指针标识符/句柄(SPATIAL)。
102persistentreactors组的结束,始终为"}"。
100子类标记(AcDbFilter)
100子类标记(AcDbSpatialFilter)
70剪裁边界上的点数。2=矩形剪裁边界(左下角和右上角)
大于2=多线剪裁边界
10剪裁边界定义点(在OCS中)(始终为2个或更多),由1的外部参照比例决定。DXF:X值;APP:二维点;
20DXF:剪裁边界定义点的Y值(始终为2个或更多)。
210包含剪裁边界的平面的法向:DXF:X值;APP:三维矢量。
220,230DXF:拉伸方向的Y和Z值。
11用于定义剪裁边界的局部坐标系统的原点。:X值;APP:三维点;
21,31DXF:用于定义剪裁边界的局部坐标系统的原点的Y和Z值。
71启用剪裁边界显示标志:0=禁用的;1=启用的;
72前剪裁平面标志:0=无;1=有;
40前剪裁平面距离(如果组码72=1)
73后剪裁平面标志:0=无;1=有;
41后剪裁平面距离(如果组码73=1)
40以主列次序写出的4x3变换矩阵。此矩阵是初始块引用(插入图元)变换的转置。当块引用重生成时,初始块引用变换适用于块中的所有图元(始终为12
个条目)。
40以主列次序写出的4x3变换矩阵将点转换成剪裁边界的坐标系统(始终为12个条目)。
SORTENTSTABLE
下列组码由SORTENTSTABLE对象使用。
SORTENTSTABLE组码
组码说明
0对象名称(SORTENTSTABLE)
5句柄
102persistentreactors组的开始,始终为"{ACAD_REACTORS"。
330所有者词典的软键指针标识符/句柄(ACAD_SORTENTS)。
102persistentreactors组的结束,始终为"}"。
100子类标记(AcDbSortentsTable)
330所有者的软键指针标识符/句柄(通常只是*MODEL_SPACE或*PAPER_SPACE块)
331图元的软键指针标识符/句柄(可以存在零个或更多的条目)。
5排序句柄(可以存在零个或更多的条目)。
如果设置SORTENTS重生成标志(位编码值16),AutoCAD将以上升句柄次序重生成图元。当使用命令DRAWORDER时,一个
SORTENTSTABLE对象将以ACAD_SORTENTS的名称被附着到*MODEL_SPACE或*PAPER_SPACE
块的扩展词典中。此词典涉及的SORTENTSTABLE对象通过各自的图元关联一个不同的句柄,这个句柄重新定义了图元的重生成次序。
XRECORD
下列组码是所有外部记录公用的组码。
外部记录组码
组码说明
100子类标记(AcDbXrecord)
1-369(except5and105)这些值可以被应用程序以任何方式使用。
外部记录可以用来存储和处理任意的数据。它们由具有“普通对象”组(即“非外部数据”组码)的DXF组码组成,支持范围从1到
369。此对象的概念与外部数据的有些相似,但没有大小或次序的限制。
原则上从版本R13c0到R13c3的AutoCAD都能使用为外部数据设计的工作方式,但如果从R13c4版本前的AutoCAD
文件中读取外部记录对象,此对象会消失。
ENTITIES区域
此节介绍的组码适用于图形对象。这些组码既出现在DXF文件的ENTITIES区域中,又在图元定义表中被AutoLISP和ARX
应用程序使用。
如不作特殊说明,本节中所出现的组码都可以应用于DXF文件、AutoLISP应用程序和ARX应用程序。当应用程序中的组码描述与DXF
文件中的组码描述不同(或只适用于其中之一)时,则在说明前有如下提示:
APP用于应用程序的说明
DXF用于DXF文件的说明
如果组码描述对DXF文件和应用程序都适用,那么没有提示,否则将存在适当的提示。可选的组码以灰色显示。
图形对象的公用组码
下表列出的组码适用于所有图形对象。其中某些组码只有在其对应属性不是缺省值的图元中出现。当用户通过图元类型引用组码表时,应注意表中不仅包括与特定图元相关的组码,还会包括下表所列的组码。
如果忽略了某组码,在(使用DXFIN)输入DXF文件时将使用(出现在第三列的)它的缺省值;如果某组码的值为缺省值,则在(使用
DXFOUT)输出时将忽略它。
适用于所有图形对象的组码
组码说明如果被忽略,
则缺省值为...
-1APP:图元名(在每次打开图形时改变)不能忽略
0图元类型不能忽略
5句柄不能忽略
102应用程序定义的组的开始"{application_name"。
例如,"{ACAD_REACTORS"表示AutoCADPersistentreactors组的开始无缺省值
application-definedcodes组102中的组码和组值由应用程序定义无缺省值
102组结束,"}"无缺省值
100子类标记(AcDbEntity)不被忽略
67不赋值或值为0时表示图元在模型空间;
1表示图元在图纸空间(可选)0
8图层名不能忽略
6线型名(如果不为BYLAYER则存在)
如果为BYBLOCK表示某不定线型
(可选)BYLAYER
62颜色代码(如果不为BYLAYER则存在)
表示BYBLOCK(不定)颜色;
表示BYLAYER;
如果为负表示图层被关闭(可选);BYLAYER
48线型比例(可选)1.0
60对象可见性(可选):
0=可见;1=不可见。0
如果Persistentreactors被附着到对象上,将输出下表所列的组码。
ACAD_REACTORS记录
组码说明
102"{ACAD_REACTORS"表示AutoCADPersistentreactors组的开始
330指向所有者词典的软键指针标识符/句柄
102组结束,"}"
如果扩展词典被附着到对象上,将输出下表所列的组码。
ACAD_XDICTIONARY记录
组码说明
102"{ACAD_XDICTIONARY"表示扩展词典组码的开始
360指向所有者词典的硬键指针标识符/句柄
102组码的结束,"}"
注意尽管组码通常按照这些DXF组码表所列的顺序出现,但请不要使编写的程序依赖于这种顺序,因为在某些条件下或在后续版本的AutoCAD
中,可能会改变这种顺序。可以利用分支或表机制来处理控制图元的组码,这样即使组码次序不定,也能正确地处理每组组码。
3DFACE
下列组码适用于三维面图元。
三维面组码
组码说明
100子类标记(AcDbFace)
10第一角点(用WCS表示)。DXF:X值;APP:三维点
20,30DXF:第一角点坐标的Y和Z值(用WCS表示)
11第二角点(用WCS表示)。DXF:X值;APP:三维点
21,31DXF:第二角点坐标的Y和Z值(用WCS表示)
12第三角点(用WCS表示)。DXF:X值;APP:三维点
22,32DXF:第三角点坐标的Y和Z值(用WCS表示)
13第四角点(用WCS表示)。如果只输入三个角点值,则第四角点与第三角点相同。:X值;APP:三维点
23,33DXF:第四角点坐标的Y和Z值(用WCS表示)
70不可见边标志(可选,缺省=0):
1=第一边不可见;
2=第二边不可见;
4=第三边不可见;
8=第四边不可见;
3DSOLID
下列组码适用于三维实体图元。
三维实体组码
组码说明
100子类标记(AcDbModelerGeometry)
70建模格式版本号(当前值=1)
1私有数据(可有多行,每行少于255个字符)
3私有数据的附加行(如果前面组码1的字符串有多于255个字符)
ACAD_PROXY_ENTITY
下面的组码适用于代理图元。
Acad_proxy_entity组码
组码说明
100DXF:AcDbProxyEntity
90DXF:代理图元类ID
91DXF:应用程序图元类ID。类ID由CLASSES区域中类的次序决定。第一个类的ID为500,第二个类的ID为
501,依此类推。
92DXF:字节图形数据的大小
310DXF:二进制图形数据(可出现多个条目)
93DXF:位图元数据的大小
310DXF:二进制图元数据(可出现多个条目)
330or340or350or360DXF:一个对象ID(可出现多个条目)
94DXF:0(表示对象ID类结束)
ARC
下列组码适用于圆弧图元。
圆弧组码
组码说明
100子类标记(AcDbCircle)
39厚度(可选,缺省值=0)
10圆心(用OCS表示)。DXF:X值;APP:三维点
20,30DXF:圆心坐标的Y和Z值(用OCS表示)
40半径
100子类标记(AcDbArc)
50起始角
51终止角
210延伸方向(可选,缺省值=0,0,1)
DXF:X值;APP:三维矢量
220,230DXF:延伸方向的Y和Z值
ATTDEF
下列组码适用于属性定义图元。
属性定义组码
组码说明
100子类标记(AcDbText)
39厚度(可选,缺省值=0)
10第一对齐点(用OCS表示)。:X值;APP:三维点
20,30DXF:文本开始点坐标的Y和Z值(用OCS表示)
40文字高度
1缺省值(字符串)
100子类标记(AcDbAttributeDefinition)
50文字旋转(可选,缺省值=0)
41关于X的比例因子(宽度)(可选,缺省值=1)
当文本使用“布满”类型时,将会调整此值
51倾斜角(可选,缺省值=0)
7文字样式名(可选,缺省值=STANDARD)
71文字生成标志(可选,缺省值=0)请参见TEXT
72水平文字对正类型(可选,缺省值=0)请参见TEXT
11第二对齐点(用OCS表示):X值;APP:三维点
只在组码72或74的值非零时才有意义
21,31DXF:第二对齐点坐标的Y和Z值(用OCS表示)
210延伸方向(可选,缺省值=0,0,1):X值;APP:三维矢量
220,230DXF:延伸方向的Y和Z值
100子类标记(AcDbAttributeDefinition)
3提示字符串
2标签字符串
70属性标志:
1=属性不可见(不出现);
2=这是一个常数属性;
4=在输出此属性时需要验证;
8=属性预置(插入时无提示);
73字段长度(可选,缺省值=0)(当前未使用)
74垂直文字对正类型(可选,缺省值=0)请参见TEXT中的组码73
如果组码72和(或)74的值非零,则将忽略第一对齐点的值,AutoCAD
根据第二对齐点和文字字符串的长度和高度(在使用了文本样式之后)计算新值;如果没有组码72和74的值或其值为零,则第二对齐点无意义。
ATTRIB
下列组码适用于属性图元。
属性组码
组码说明
100子类标记(AcDbText)
39厚度(可选,缺省值=0)
10文字起点(用OCS表示)。DXF:X值;APP:三维点
20,30DXF:文本起点坐标的Y和Z值(用OCS表示)
40文字高度
1缺省值(字符串)
100子类标记(AcDbAttribute)
2属性标记(字符串)
70属性标志:
1=属性不可见(不出现);
2=这是一个常数属性;
4=在输出此属性时需要验证;
8=属性预置(插入时无提示);
73字段长度(可选,缺省值=0)(当前未使用)
50文字旋转(可选,缺省值=0)
41关于X比例因子(宽度)(可选,缺省值=1)
当文字使用“布满”类型时,将会调整此值
51倾斜角(可选,缺省值=0)
7文字样式名(可选,缺省值=STANDARD)
71文字生成标志(可选,缺省值=0)请参见TEXT
72水平文字对正类型(可选,缺省值=0)请参见TEXT.
74垂直文字对正类型(可选,缺省值=0)请参见TEXT中的组码73
11对齐点(用OCS表示)DXF:X值;APP:三维点
只在组码72或74存在且非零时存在
21,31DXF:对齐点坐标的Y和Z值(用OCS表示)
210拉伸方向。只在图元的延伸方向不平行于WCS的Z轴时存在(可选,缺省值=0,0,1)
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
如果组码72和(或)74的值非零,将忽略文本插入点的值,AutoCAD
根据文本对齐点和文字字符串长度(在应用了文本样式之后)计算新值;如果没有组码72和74的值或其值为零,则忽略文字对齐点,AutoCAD
根据文字插入点和文字字符串的长度(在申请了文本样式之后)重新计算新值。
BODY
下列组码适用于体图元。
体组码
组码说明
100子类标记(AcDbModelerGeometry)
70建模格式版本号(当前值=1)
1私有数据(可有多行,每行少于255个字符)
3私有数据的附加行(如果前面组码1的字符串多于255个字符)
CIRCLE
下列组码适用于圆图元。
圆组码
组码说明
100子类标记(AcDbCircle)
39厚度(可选,缺省值=0)
10圆心(用OCS表示)。DXF:X值;APP:三维点
20,30DXF:圆心坐标的Y和Z值(用OCS表示)
40半径
210拉伸方向(可选,缺省值=0,0,1)
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
DIMENSION
标注图元定义数据包括适用于所有标注类型的组码,以及该类标注所特有的组码。
公用标注组码
下列组码适用于所有标注类型。
公用标注组码
组码说明
100子类标记(AcDbDimension)
2包含组成标注的图元的块名称
10标注点(用WCS表示)。DXF:X值;APP:三维点。
20,30DXF:标注点坐标的Y和Z值(用WCS表示)
11标注文本的中点(用OCS表示)。DXF:X值;APP:三维点。
21,31标注文本的中点坐标的Y和Z值(用OCS表示)
70标注类型:
整数值0-6表示标注类型。
位值32、64和128则添加到整数值后(在R13和更高版本中设置值32)。
0=转角标注、水平标注或垂直标注;1=对齐标注;
2=角度标注;3=直径标注;4=半径标注;
5=角度三点标注;6=坐标标注;
32=表示块引用(组码2)只被此标注引用;
64=坐标标注类型,此位值(位7)只与类型6一起使用,如果设置,坐标类型为X型,否则为Y型;
128=如果标注文本位于用户指定的位置而不是缺省位置,此位值(位7)将添加到其他的组码70的值中。
1用户明确地输入了标注文字(可选,缺省值为测量结果)
如果为空或"<>",以文字方式标注测量结果;
如果为""(一个空格),禁止输出文字,其他情况下将作为文字绘制到图形中。
53组码53可选,表示标注文字方向与其缺省方向之间的旋转角度(尺寸线的方向)。
51所有标注类型都有可选组码
51,此组码为标注图元表示了水平方向。它为水平标注、垂直标注及转角线性标注指定了标注文本和尺寸线的方向。组码值为OCSX轴与
UCSX轴间的角度的负值(始终在OCS的XY面中度量该角度)。
210拉伸方向(可选,缺省值=0,0,1):X值;APP:3D矢量
220,230DXF:拉伸方向的Y和Z值
3标注样式名
属于应用程序ID"ACAD"
的扩展数据可以跟随在标注图元之后。这说明任何标注都能替代已被图元使用的标注。请参见标注样式替代!AL(`XREF_62386_al_u05_c',1)。
对于所有的标注类型,下列组码表示三维WCS点:(10,20,30)、(13,23,33)、(14,24,34)和(15,25,
35)。对于所有的标注类型,下列组码表示三维WCS点:(11,21,31)、(12,22,32)和(16,26,36)。
对齐、线性和转角标注组码
下列组码适用于对齐、线性和转角标注。
对齐、线性和转角标注组码
组码说明
100子类标记(AcDbAlignedDimension)
12标注复制的插入点-基线和连续标注(在OCS中)。
DXF:X值;APP:三维点
22,32DXF:标注复制的插入点-基线和连续标注的Y和Z值(在OCS中)。
13线性标注和转角标注的定义点(在WCS中)。:X值;APP:三维点
23,33DXF:线性标注和转角标注的定义点的Y和Z值(在WCS中)。
14线性标注和转角标注的定义点(在WCS中)。:X值;APP:三维点。
24,34DXF:线性标注和转角标注的定义点的Y和Z值(在WCS中)。
点(13,23,33)指定第一尺寸界线的起点,点(14,24,34)指定第二尺寸界线的起点,点(10,20,30)指定尺寸线位置,点
(11,21,31)指定标注文字的中点。
线性标注和转角标注组码
下列组码适用于线性和转角标注。
线性和转角标注组码
组码说明
50转角、水平和垂直标注的角度。
52具有倾斜角度的线性标注类型有可选组码52。当增加线性标注的旋转角(组码50)时,组码52给出延长线的角度。
100子类标记(AcDbRotatedDimension)
径标注和直径标注组码
下列组码适用于半径和直径标注。
半径和直径标注组码
组码说明
100子类标记(AcDbRadialDimension或AcDbDiametricDimension)。
15直径、半径和转角标注的定义点(在WCS中)。:X值;APP:三维点
25,35DXF:直径、半径和转角标注的定义点的Y和Z值(在WCS中)。
40半径和直径标注的引线长度。
点(15,25,35)指定圆/圆弧上的尺寸线的第一点,点(10,20,30)指定尺寸线的第二点,点(11,21,31)指定标注文字的中点。
点(15,25,35)指定圆/圆弧上的尺寸线的第一点,点(10,20,30)指定圆/圆弧的圆心,点(11,21,31)指定标注文字的中点。
度标注组码
下列组码适用于角度标注。
角度标注组码
组码说明
100子类标记(AcDb3PointAngularDimension)
13线性和角度标注的定义点(在WCS中)。DXF:X值;APP:三维点。
23,33DXF:线性和角度标注的定义点的Y和Z值(在WCS值)。
14线性和角度标注的定义点(在WCS中)。DXF:X值;APP:三维点。
24,34DXF:线性和角度标注的定义点的Y和Z值(在WCS值)。
15直径、半径和角度标注的定义点(在WCS中)。:X值;APP:三维点
25,35DXF:直径、半径和角度标注的定义点的Y和Z值(在WCS中)。
16角度标注的标注弧的定义点(在OCS中)。DXF:X值;APP:3D点。
26,36DXF:角度标注的标注弧的定义点的Y和Z值(在OCS中)。
点(13,23,33)和点(14,24,34)指定第一尺寸界线的端点,点(10,20,30)和点(15,25,35)
指定第二尺寸界线的端点,点(16,26,36)指定标注弧线的位置,点(11,21,31)指定标注文字的中点.
点(15,25,35)指定角的顶点,点(13,23,33)和点(14,24,34)指定尺寸界线的端点,点(10,20,30)指定标注弧线的位置,点(11,21,31)指定标注文字的中点。
标标注组码
下列组码适用于坐标标注。
坐标标注组码
组码说明
100子类标记(AcDbOrdinateDimension)
13线性和角度标注的定义点(在WCS中)。DXF:X值;APP:三维点。
23,33DXF:线性和角度标注的定义点的Y和Z值(在WCS中)。
14线性和角度标注的定义点(在WCS中)。DXF:X值;APP:三维点。
24,34DXF:线性和角度标注的定义点的Y和Z值(在WCS中)。
点(13,23,33)指定特征位置,点(14,24,34)指定引线和点,点(11,21,31)指定标注文字的中点,当创建标注时,点
(10,20,30)放置于当前UCS的原点。
注样式替代
标注样式替代可应用于标注、引线和公差图元。任何用于这些图元的替代都以扩展数据的形式存储在图元中。组码1002中的控制字符串包含了被替代标注的变量组码和关联值。下面的例子显示了标注图元的扩展数据中的被替代的变量DIMTOL和DIMCLRE。
(setqdiment(car(entsel)));选择标注图元
(setqelst(entgetdiment'("ACAD")));得到图元定义表
(assoc-3elst);只获得外部数据
代码返回如下:
(-3("ACAD"扩展数据的ACADAPPID部分开始
(1000."DSTYLE")(1002."{")标注样式子部分的开始
(1070.177)(1070.3)DIMCLRE(组码177)替代及关联值(3)
(1070.71)(1070.1)DIMTOL(组码71)替代及关联值(1)
(1002."}")))标注样式子部分和ACAD部分结束
LLIPSE
下列组码适用于椭圆图元。
椭圆组码
组码说明
100子类标记(AcDbEllipse)
10圆心(在WCS中)。DXF:X值;APP:三维点
20,30DXF:圆心的Y和Z值(在WCS中)
11长轴的端点(相对于圆心的相对值)。DXF:X值;APP:三维点。
21,31DXF:长轴的端点的Y和Z值,它们是相对于圆心的相对值。
210拉伸方向(可选,缺省值=0,0,1)
DXF:X值;APP:三维点
220,230DXF:拉伸方向的Y和Z值
40长轴与短轴的比例
41起始参数(对于完整椭圆此值为0.0)
42结束参数(对于完整椭圆此值为2pi)
组码41和42为下面等式中的u的起始和结束值。组码11,21,31矢量的大小等于长轴值的1/2,即下面等式中的a值。点
10,20,30是下面等式中的c值。知道了上述数值,即可计算出所需的b值,这样,下列方程式就完整了。
ELLIPSE命令中“参数”选项的说明
ELLIPSE命令中“参数”选项使用下面的方程式来定义一个椭圆弧。
p(u)=c+a*cos(u)+b*sin(u)
当用户为第一轴选定端点且为第二轴选定距离后,变量a、b和c值即被决定。a的值为长轴长度1/2的负值,b的值为短轴长度1/2的负值,c为椭圆的圆心(2-D)。
因为此方程式是一个矢量方程且变量c具有X和Y值,所以它应该写成如下形式:
p(u)=(Cx+a*cos(u))*i+(Cy+a*sin(u))*j
此处
Cx是点c的X值
Cy是点c的Y值
a为-(长轴长度的1/2)
b为-(短轴长度的1/2)
i和j表示X和Y方向上的单位矢量
在AutoCAD中,一旦确定了轴的端点和椭圆弧的起点及终点,那么椭圆也就确定了。
当用户选定了“参数”选项中的起始参数和结束参数后,这些参数值将被带入方程式来求得椭圆的实际的起点和终点。椭圆的其他部分将从起点到终点以逆时针方向绘制。输入的
u值被转换成度数以求得cos(u)和sin(u)。
例如:
轴端点1=0,1
轴端点2=4,1
另一个轴距=2,0
起始参数=270
结束参数=0
将生成起点位于(2,2),终点位于(0,1),以逆时针方向填充的椭圆。
HATCH
下列组码适用于图元填充。
填充组码
组码说明
100子类标记(AcDbHatch)
10标高点(在OCS中)。DXF:X值=0;APP:三维点(X和Y值始终为0,Z表示标高)
20,30DXF:标高点的Y和Z值(在OCS中)。
Y值=0,Z表示标高。
210拉伸方向(可选,缺省值=0,0,1)。
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
2填充图案名称
70实体填充标志(实体填充=1;图案填充=0)
71关联填充标志(关联的=1;不关联的=0)
91边界路径(环)的数目
varies边界路径数据。组码91指定重复次数。
75填充样式:
0=填充“奇数”区域(“普通”样式);
1=只填充最外面的区域(“外部”样式);
2=填充整个区域(“忽略”样式);
76填充图案类型
0=用户定义;
1=预定义;
2=自定义
52填充图案角度(只用于图案填充)
41填充图案比例或间距(只用于图案填充)
77填充图案加倍标志(加倍=1,不加倍=0)(只用于图案填充)。
78图案定义线的数目。
varies图案线数据。由组码78指定重复次数。请参见图案数据!AL(`XREF_15719_al_u05_c',1)。
47像素尺寸(可选)
98种子点数目。
10种子点(在OCS中)。DXF:X值;APP:二维点。(多图元)
20DXF:种子点的Y值(在OCS中)。(多图元)
边界路径数据
每个填充对象的边界由路径(或环)定义,该路径由一个或多个线段组成。路径段数据因组成路径的图元的类型而异。每个路径段由它自己的组码集定义。
填充边界路径数据组码
组码说明
92边界路径类型标志(位码)
0=缺省设置;
1=外部的;
2=多段线;
4=导出的
8=文本框;
16=最外部的
varies多段线边界类型数据(只当边界是多段线时)
请参见下面的多段线边界数据表。
93边界路径中的边数(只当边界不是多段线时)
72边类型(只当边界不是多段线时):
1=直线;
2=圆弧;
3=椭圆弧;
4=样条曲线;
varies边类型数据(只当边界不是多段线时)。请参见下面的边界数据表。
97源边界对象的数目。
330源边界对象引用(多图元)。
多段线边界数据组码
组码说明
72有一个凸度标志
73是关闭的标志
93多段线顶点的数目
10顶点位置(在OCS中)。DXF:X值;APP:二维点(多图元)
20DXF:顶点位置的Y值(在OCS中)。(多图元)
42凸度(可选,缺省值=0)
直线边数据组码
组码说明
10起点(在OCS中)。DXF:X值;APP:二维点。
20DXF:起点的Y值(在OCS中)。
11终点(在OCS中)。DXF:X值;APP:二维点。
21DXF:终点的Y值(在OCS中)。
圆弧边数剧组码
组码说明
10圆心(在OCS中)。DXF:X值;APP:二维点
20DXF:圆心的Y值(在OCS中)。
40半径
50起始角度
51结束角度
73是反时针方向标志
椭圆边数据组码
组码说明
10圆心(在OCS中)。DXF:X值;APP:二维点。
20DXF:圆心的Y值(在OCS中)。
11相对于圆心坐标的长轴的端点(在OCS中)。:X值;APP:二维点。
21DXF:长轴端点的Y值(在OCS中)。
40短轴的长度(以长轴长度的百分数表示)。
50起始角度
51结束角度
73是反时针方向标志
样条曲线边数据组码
组码说明
94度数
73有理
74周期性
95结点数
96控制点数
40结点值(多图元)
10中心点(在OCS中)。DXF:X值;APP:二维点
20DXF:中心点的Y值(在OCS中)。
42权值(可选,缺省值=1)
案数据
下列图案数据组码在每个图案定义线是重复的。
填充图案数据组码
组码说明
53图案线角度
43图案线基点,X分量
44图案线基点,Y分量
45图案线偏移,X分量
46图案线偏移,Y分量
79点划长度项目数
49点划长度(多图元)
MAGE
下列组码适用于图像图元。
图像组码
组码说明
100子类标记(AcDbRasterImage)
90类版本
10插入点(在OCS中)。DXF:X值;APP:三维点
20,30DXF:插入点的Y和Z值(在OCS中)。
11单一像素的U-矢量(从插入点开始的沿着图像的视图底边的点)
(在OCS中)。DXF:X值;APP:三维点
21,31DXF:U-矢量的Y和Z值(在OCS中)
12单一像素的V-矢量(从插入点开始的沿着图像的视图左边的点)
(在OCS中)。DXF:X值;APP:三维点
22,32DXF:V-矢量的Y和Z值(在OCS中)
13以像素点表示的图像尺寸。DXF:U值;APP:二维点(U和V值)
23DXF:以像素点表示的图像尺寸的V值
340图像定义对象的固定引用。
70图像显示特性
1=显示图像;
2=显示非正交图像;
4=显示剪贴图像;
8=打开透明状态;
280剪裁状态:0=关;1=开
281亮度值(0-100;缺省值=50)
282对比度值(0-100;缺省值=50)
283褪色值(0-100;缺省值=0)
360Imagedef_reactor对象的固定引用
71剪裁边界类型:1=矩形的;2=多边形的
91剪裁边界的顶点数
14剪裁边界顶点(在OCS中)。DXF:X值;APP:二维点(多图元)
注意:对于矩形剪裁边界类型,必须指定两个对角点。缺省值为(-0.5,-0.5),(图像尺寸的x-0.5,图像尺寸的
y-0.5)。对于多边形剪裁边界类型,必须指定三个或三个以上的顶点。必须依次列出顶点。
24DXF:剪裁边界顶点的Y值(在OCS中)(多图元)
INSERT
下列组码适用于插入(块引用)图元。
插入组码
组码说明
100子类标记(AcDbBlockReference)
66可变的“跟随属性”标志(可选,缺省值=0)。如果跟随属性标志的值为1,其后需要插入一连串的属性图元,到seqend图元终止。
2块名称
10插入点(在OCS中)。DXF:X值;APP:三维点
20,30DXF:插入点的Y和Z值(在OCS中)
41X比例因子(可选,缺省值=1)
42Y比例因子(可选,缺省值=1)
43Z比例因子(可选,缺省值=1)
50旋转角度(可选,缺省值=0)
70列数(可选,缺省值=1)
71行数(可选,缺省值=1)
44列间距(可选,缺省值=0)
45行间距(可选,缺省值=0)
210拉伸方向(可选,缺省值=0,0,1)
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
LEADER
下列组码适用于引线图元。
引线组码
组码说明
100子类标记(AcDbLeader)
3标注样式名称
71箭头标志:0=禁用;1=可用
72引线路径类型:0=直线段;1=样条曲线
73引线创建标志(缺省值=3):
0=与文本注释一起创建引线;
1=与公差注释一起创建引线;
2=与块引用注释一起创建引线;
3=创建引线,没有任何注释;
74钩线方向标志:
0=钩线(或样条引线的切线结束)方向与水平矢量方向相反;
1=钩线(或样条引线的切线结束)方向与水平矢量方向相同(请参见组码75);
75钩线标志:0=无钩线;1=有钩线
40文字注释高度
41文字注释宽度
76引线中的顶点数(DXFIN时被忽略)
10顶点坐标(适用于每个顶点的条目)DXF:X值;APP:三维点
20,30DXF:顶点坐标的Y和Z值
77当引线的DIMCLRD=BYBLOCK时使用的颜色
340关联注释的固定引用(多行文字,公差或插入图元)
210法线矢量。DXF:X值;APP:三维矢量
220,230DXF:法线矢量的Y和Z值
211引线的“水平”方向。DXF:X值;APP:三维矢量。
221,231DXF:引线的“水平”方向的Y和Z值
212块引用插入点距最终引线顶点的偏移。:X值;APP:三维矢量
222,232DXF:块引用插入点距最终引线顶点的偏移的Y和Z值。
213注释位置点距最终引线顶点的偏移。DXF:X值;APP:三维矢量
223,233DXF:注释位置点距最终引线顶点的偏移的Y和Z值。
属于应用程序ID"ACAD"
的扩展数据可以跟随在引线图元之后,这描述了已应用于图元任何标注替代。请参见标注样式替代!AL(`XREF_62386_al_u05_c',1)。
LINE
下列组码适用于直线图元。
直线组码
组码说明
100子类标记(AcDbLine)
39厚度(可选,缺省值=0)
10起点(在WCS中)。DXF:X值;APP:三维点
20,30DXF:起点的Y和Z值(在WCS中)
11终点(在WCS中)。DXF:X值;APP:三维点
21,31DXF:终点的Y和Z值(在WCS中)
210拉伸方向(可选,缺省值=0,0,1)。
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
LWPOLYLINE
下列组码适用于优化多段线图元。
优化多段线组码
组码说明
100子类标记(AcDbPolyline)
90顶点数
70多段线标志(位码);缺省值为0:
1=关闭的;
128=多段线生成
43常量宽度(可选,缺省值=0);当设置了变化的宽度(组码40和/或41)时,不使用该组码
38标高(可选,缺省值=0)
39厚度(可选,缺省值=0)
10顶点坐标(在WCS中)(多图元),每个顶点都有该条目。:X值;APP:二维点
20DXF:顶点坐标的Y值(在WCS中)(多图元);每个顶点都有该条目。
40起始宽度(多图元,每个顶点都有该条目)(可选,缺省值=0,多条目)。如果设置了常量宽度(组码43),则不使用该组码。
41结束宽度(多图元,每个顶点都有该条目)(可选,缺省值=0,多条目)。如果设置了常量宽度(组码43),则不使用该组码。
42凸度(多图元,每个顶点都有该条目)(可选,缺省值=0)。
210拉伸方向(可选,缺省值=0,0,1)。
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
MLINE
下列组码适用于多线图元。
多线组码
组码说明
100子类标记(AcDbMline)
2字符串最长为32个字符,它是多线的样式名称。在MLINESTYLE词典中必须存在该样式的条目。
注意:不要修改该字段。
340MLINESTYLE词典的指针句柄/ID
40比例因子
70对正:0=上;1=零;2=下
71开放/闭合标记:1=开放;3=闭合
72顶点数
73MLINESTYLE词典中的元素数
10起点(在WCS中)。DXF:X值;APP:三维点
20,30DXF:起点的Y和Z值(在WCS中)
210拉伸方向(可选,缺省值=0,0,1)
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
11顶点坐标(多条目;每个顶点都有该条目)。
DXF:X值;APP:三维点
21,31DXF:顶点坐标的Y和Z值
12该顶点线段开始方向矢量(多条目;每个顶点都有该条目)。:X值;APP:三维矢量
22,32DXF:该顶点线段开始方向矢量的Y和Z值
13该顶点的斜接方向矢量(多条目;每个顶点都有该条目)。DXF:X值;APP:三维矢量
23,33DXF:斜接方向矢量的Y和Z值
74该元素的参数数目(线段中的每个元素都重复该组码)
41元素参数(由前面的组码74决定重复次数)
75该元素的区域填充参数的数目(线段中的每个元素都重复该组码)
42区域填充参数(由前面的组码75决定重复次数)
参数化组码41是一个实数列表,每个组码41对应一个实数,此列表可以包含零个或更多项。第一个组码41
的组值是从线段顶点到直线元素路径与斜接矢量交点的距离(沿斜接矢量方向),第二个组码41的组值是从第一个组码41
定义的点到直线元素实际起点的距离(沿直线元素路径方向),第三个组码41的组值是从直线元素起点到直线元素中第一个断点的距离。后续的组码41
的组值依次列出了该多线的线段中的起点和终点。线型不影响组码41列表。
参数化组码42也是一个实数列表。与参数化组码41类似,它描述了此多线填充区域的参数化法。它们的组值与组码41
参数的解释相同,且在将所有多线中的直线元素当作一个整体时,它们定义了多线填充区域的边界。
一个使用组码42机制的普通例子是,当未被填充的多线与已填充的多线相交时,使用mledit
使被填充的多线在相交区域显现出来,这将导致相互影响的多段线中每个直线元素的两个组码42发生变化,一个是填充开始的,一个是填充结束的。
在多线图元和多线样式对象中组码2是多余的,尽管可以安全的读取和使用它们的关联值,但这些组码在任何情况下都不能被修改。可以修改的正确字段如下:
多线
在相同对象中的组码340,它指定了正确的MLINESTYLE对象。
多线样式
MLINESTYLE词典中的组码3(位于组码350之前)的值有当前MLINESTYLE的图元名或句柄。
MTEXT
下列组码适用于多行文字图元。
多行文字组码
组码说明
100子类标记(AcDbMText)
10插入点。DXF:X值;APP:三维点
20,30DXF:插入点的Y和Z值
40缺省文字高度
41参考矩形宽度
71附着点:
1=左上;2=中上;3=右上;
4=左中;5=中间;6=右中;
7=左下;8=中下;9=右下;
72绘图方向:
1=由左至右;2=由右至左;
3=由上至下;4=由下至上;
1文字字符串。如果文字字符串少于250个字符,所有的字符存放于组码1中;如果字符串多于250个字符,字符串被分为250
个字符的数据块,这些数据块存放在一个或多个组码3中。如果使用组码3,最后的组码是组码1,其中的数据组少于250个字符。
3附加文字(总是存放于250个字符的数据块中)
7文字样式名称(如果未提供则为STANDARD)
210拉伸方向(可选,缺省值=0,0,1)
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
11X轴方向矢量(在WCS中)
DXF:X值;APP:三维矢量
注意:当组码50(弧度表示的转角)作为DXF的输入被传递时,它将被转化为等价的方向矢量(如果组码50和组码11、21、31
都被传递,方向由最后一个决定)。提供此组码是为了方便从文字对象向多行文字对象的转化。
21,31DXF:X轴方向矢量的Y和Z值(在WCS中)
42组成多行文字的字符的水平宽度。(此值始终小于或等于组码41的值)。
43组成多行文字的字符的垂直高度。
50弧度表示的旋转角度。
OLEFRAME
下列组码适用于OLE边框图元。
OLE边框组码
组码说明
100子类标记(AcDbOleFrame)
70OLE版本号
90二进制数据长度
310二进制数据(多直线)
1Ole数据的结尾(字符串"OLE")
OLE2FRAME
下列组码适用于OLE2边框图元,该信息是只读的。在DXFIN时,这些值被忽略,因为它们是OLE
二进制数据的一部分,且可通过访问函数来获得。
OLE2边框组码
组码说明
100子类标记(AcDbOle2Frame)
70OLE版本号
3二进制数据的长度
10左上角(在WCS中)。DXF:X值;APP:三维点
20,30DXF:左上角的Y和Z值(在WCS中)。
11右下角(在WCS中)。DXF:X值;APP:三维点
21,31DXF:右下角的Y和Z值(在WCS中)
71OLE对象类型:1=链接;2=内嵌;3=静态
72平铺模式描述:
0=对象在一个平铺的模型空间视口中;
1=对象在非平铺的空间视口中(图纸空间或浮动模型空间);
90二进制数据长度
310二进制数据(多直线)
1OLE数据的结尾(字符串"OLE")
DXF输出例子:
OLE2FRAME
5
2D
100
AcDbEntity
67
1
8
0
100
AcDbOle2Frame
70
2
3
PaintbrushPicture
10
4.43116
20
5.665992
30
0.0
11
6.4188
21
4.244939
31
0.0
71
2
72
1
90
23680
3100155764BD60082B91140114B08C8F9A9DC0D0D9AC
310
1940114B08C8F9A9DC0D0D9AC194002303E5CD1FA
310
1BD60082B9114002303E5CD1FA1000
...
...
AutoLISP函数entnext输出的样例:
命令:(setqe(entgete3))
((-1.<图元名:7d50428>)(0."OLE2FRAME")(5."2D")
(100."AcDbEntity")(67.1)(8."0")(100."AcDbOle2Frame")
(70.2)(3"PaintbrushPicture")(104.431165.665990.0)
(116.41884.244940.0)(71.2)(72.1))
POINT
下列组码适用于点图元。
点组码
组码说明
100子类标记(AcDbPoint)
10点位置(在WCS中)。DXF:X值;APP:三维点
20,30DXF:点位置的Y和Z值(在WCS中)
39厚度(可选,缺省值=0)
210拉伸方向(可选,缺省值=0,0,1)
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
50当绘制点时,X轴与起作用的UCS之间的角度(可选,缺省值=0)(当PDMODE非零时使用该组码)
POLYLINE
下列组码适用于多段线。
多段线组码
组码说明
100子类标记(AcDb2dPolyline或AcDb3dPolyline)
10DXF:始终为0;:一个“伪”点,X和Y值始终为零,Z值为多段线的标高(二维时在OCS中,三维时在WCS中)
20DXF:始终为零
30DXF:多段线的标高(二维时在OCS中,三维时在WCS中)
39厚度(可选,缺省值=0)
70多段线标志(位编码);缺省值为0:
1=这是一个闭合的多段线(或在M方向闭合的多边形网格);
2=曲线拟合添加了顶点;
4=添加样条曲线拟合添加了顶点;
8=这是一个三维多段线;
16=这是一个三维多边形网格;
32=在N方向闭合的多边形网格;
64=多段线是多面网格;
128=不断在此多段线顶点的周围生成线型图案;
40缺省开始宽度(可选,缺省值=0)
41缺省结尾宽度(可选,缺省值=0)
71多边形网格的M顶点数(可选,缺省值=0)
72多边形网格的N顶点数(可选,缺省值=0)
73平滑表面M向的密度(可选,缺省值=0)
74平滑表面N向的密度(可选,缺省值=0)
75曲线和平滑表面类型(可选,缺省值=0),整型编码,不是位码:
0=无平滑表面拟合:
5=二次B样条曲线表面;
6=三次B样条曲线表面;
8=Bezier表面
210拉伸方向(可选,缺省值=0,0,1)
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
具有"AUTOCAD_POSTSCRIPT_FIGURE"应用程序ID的扩展数据可以跟随在多段线图元后。其中包含的信息与
PostScript图像和PostScript填充的信息有关。
多面网格
在DXF中多面网格是多段线的一个变种。存在多面网格位标识(组码70中的64位)的多段线被识别为多面网格。组码71
指定网格中的顶点数,组码72指定面数。尽管这些数字对于所有由命令PFACE
创建的网格来说都是正确的,但应用程序不必将正确的值放入此字段中。多段线表头后是一个顶点图元序列,用于指定顶点坐标,其后是组成网格的面。
AutoCAD
图元结构为所给出的面图元指定的顶点数强加一个限制。用户可以通过将多边形分解成三角形楔体来表现更复杂的多边形,这些楔体的边应该是不可见的,这样可以防止拆分单元的可见人造边被绘制出来。命令
PFACE可以自动执行拆分,但当应用程序直接生成多面网格时,必须由应用程序亲自执行拆分。在拆分过成中,每个面的顶点数是关键参数。系统变量
PFACEVMAX提供了一个每个面具有顶点数的申请,该变量是只读的,其值为4。
命令PFACE创建多面网格时首先生成所有顶点坐标的图元,然后生成面定义图元。这种次序是根据AutoCAD
中处理多面网格的组码的要求决定的。虽然从DXF中读取多面网格的程序允许顶点和面的次序不固定,但在DXF
中生成多面网格的程序仍应该首先生成所有顶点,再生成所有的面。
RAY
下列组码适用于射线图元。
射线组码
组码说明
100子类标记(AcDbRay)
10起点(在WCS)。DXF:X值;APP:三维点
20,30DXF:起点的Y和Z值(在WCS)
11单位方向矢量(在WCS)。DXF:X值;APP:三维点
21,31DXF:单位方向矢量的Y和Z值(在WCS中)
REGION
下列组码适用于面域图元。
面域组码
组码说明
100子类标记(AcDbModelerGeometry)
70建模格式版本号(当前值=1)
1私有数据(有多行,每个少于255个字符)
3私有数据的附加行(如果前面的组码1字符串多于255个字符)
SEQEND
下列组码适用于seqend图元。
Seqend组码
组码说明
-2APP:序列的开始图元名。此图元标记了多段线的顶点(顶点类型名称)的结束,或插入图元的属性图元(显示属性类型名称)的结束(该插入图元具有由组码
66(存在且非零)指定的属性)。:文件中不保存此组码。
SHAPE
下列组码适用于形图元。
形组码
组码说明
100子类标记(AcDbShape)
39厚度(可选,缺省值=0)
10插入点(在WCS中)。DXF:X值;APP:三维点
20,30DXF:插入点的Y和Z值(在WCS中)
40尺寸
2形名称
50旋转角度(可选,缺省值=0)
41相对X比例因子(可选,缺省值=1)
51倾斜角(可选,缺省值=0)
210拉伸方向(可选,缺省值=0,0,1)。
DXF:X值;APP:三维矢量
220,230DXF:拉伸方向的Y和Z值
SOLID
下列组码适用于实体图元。
实体组码
组码说明
100子类标记(AcDbTrace)
10第一角点。DXF:X值;APP:三维点
20,30DXF:第一角点的Y和Z值
11第二角点。DXF:X值;APP:三维点
21,31DXF:第二角点的Y和Z值
12第三角点。DXF:X值;APP:三维点
22,32DXF:第三角点的Y和Z值
13第四角点。如果只输入三个角点来定义实体,则第四角点的坐标与第三角点相同。DXF:X值;APP:三维点
23,33DXF:第四角点的Y和Z值
39厚度(可选,缺省值=0)
210拉伸方向(可选,缺省值=0,0,1)
DXF:X值;APP:三维点
220,230DXF:拉伸方向的Y和Z值
SPLINE
此组码适用于样条曲线图元。
样条曲线组码
组码说明
100子类标记(AcDbSpline)
210法线矢量(如果样条曲线不是平面图元,则会被忽略):X值;APP:三维点
220,230DXF:法线矢量的Y和Z值
70样条曲线标志(位编码):
1=闭合的样条曲线;
2=周期性样条曲线;
4=有理样条曲线;
8=平面;
16=线性(平面位也被设置)
71样条曲线的阶
72结点数目
73控制点数目
74拟合点数目(如果存在)
42结点公差(缺省值=0.0000001)
43控制点公差(缺省值=0.0000001)
44拟合公差(缺省值=0.)
12起始正切方向(在WCS中)-可被忽略。:X值;APP:三维点。
22,32DXF:起始正切方向(可被忽略)的Y和Z值(在WCS中)。
13结束正切方向(在WCS中)-可被忽略。:X值;APP:三维点
23,33DXF:结束正切方向(可被忽略)的 Y 和 Z 值(在WCS中)
40结点值(每个结点都有一个该条目)
41权值(如果非1);如果都不是1时,带多个组码对
10控制点(在WCS中)每个控制点都有一个该条目。:X值;APP:三维点
20,30DXF:控制点的Y和Z值(在WCS中)(每个控制点都有一个该条目)
11拟合点(在WCS中)每个拟合点都有一个该条目。:X值;APP:三维点
21,31DXF:拟合点的Y和Z值(在WCS中)(每个拟合点都有一个该条目)
发表评论