图层使用,如果使用索引颜色,则需要知道对应的RGB颜色,一般枚举或者自己总结规律。如果是其他的,则需要通过420后面的RGB值, 转换 到RGB专用数值上。(其值为10进制的,需要转换到16进制,然后拆分或者直接转换成RGB的值)
以下是 DXF 文件 TABLES 段的样例。
| 0 SECTION 2 TABLES | TABLES 段的开始 |
| 0 TABLE 2 <表类型> 5 <句柄> 100 AcDbSymbolTable 70 <最大条目数量> | 通用表组码;为每个条目重复一次 |
| 0 <表类型> 5 <句柄> 100 AcDbSymbolTableRecord . . <数据> . | 表条目数据;为每个表记录重复一次 |
| 0 ENDTAB | 表的结束 |
| 0 ENDSEC | TABLES 段的结束 |
相关参考
APPID(应用程序标识表)
BLOCK_RECORD(块参照表)
DIMSTYLE(标注样式表)
LAYER(图层表)
LTYPE(线型表)
STYLE(文字样式表)
UCS(用户坐标系表)
VIEW(视图表)
VPORT(视口配置表)
以下组码适用于 LAYER 符号表条目。
| LAYER 组码 | |
| 组码 | 说明 |
| 100 | 子类标记 (AcDbLayerTableRecord) |
| 2 | 图层名 |
| 70 | 标准标记(按位编码值): 1 = 冻结图层,否则解冻图层 2 = 默认情况下在新视口中冻结图层 4 = 锁定图层 16 = 如果设定了此位,则表条目外部依赖于外部参照 32 = 如果同时设定了此位和位 16,则表明已成功融入了外部依赖的外部参照 64 = 如果设定了此位,则表明在上次编辑图形时,图形中至少有一个图元参照了表条目。(此标志对 AutoCAD 命令很有用。大多数读取 DXF 文件的程序都可以忽略它,并且无需由写入 DXF 文件的程序对其进行设定) |
| 62 | 颜色编号(如果为负值,则表明图层处于关闭状态) |
| 6 | 线型名 |
| 290 | 打印标志。如果设定为 0,则不打印此图层 |
| 370 | 线宽枚举值 |
| 390 | PlotStyleName 对象的硬指针 ID/句柄 |
| 347 | Material 对象的硬指针 ID/句柄 |
在执行 SAVEAS 期间,外部参照相关的图层被输出。对于这些图层,DXF 文件中关联的线型名始终为 CONTINUOUS。
相关参考
相关概念
下表列出了适用于几乎所有图形对象的组码。此处显示的某些组码仅在图元特性具有非默认值时才包含在图元定义中。请记住,在按照图元类型(与特定图元关联的代码列表)参照组码时,此处显示的代码也将出现。
注意:编写程序时不要依赖这些 DXF 代码表中显示的次序。尽管这些表显示了组码通常出现的次序,但该次序在某些条件下或在 AutoCAD ® 以后的版本中可能会改变。控制图元的代码应该由事例(开关)或表驱动,这样即使组未按预期的次序显示,仍可以得到正确的处理。
如果省略某个组,则使用 OPEN 输入时它的默认值显示在第三列中。如果组码值等于默认值,则使用 SAVEAS 输出时该值将被省略。
| 适用于所有图形对象的组码 | ||
| 组码 | 说明 | 如果省略, 默认为 … |
| -1 | APP:图元名(每次打开图形时都会发生变化) | 未省略 |
| 0 | 图元类型 | 未省略 |
| 5 | 句柄 | 未省略 |
| 102 | 应用程序定义的组的开始 “{application_name”(可选) | 无默认值 |
| 应用程序定义的代码 | 102 组中的代码和值由应用程序定义(可选) | 无默认值 |
| 102 | 组的结束“}”(可选) | 无默认值 |
| 102 | “{ACAD_REACTORS”表示 AutoCAD 永久反应器组的开始。仅当将永久反应器附加到此对象时,此组才存在(可选) | 无默认值 |
| 330 | 所有者词典的软指针 ID/句柄(可选) | 无默认值 |
| 102 | 组的结束“}”(可选) | 无默认值 |
| 102 | “{ACAD_XDICTIONARY”表示扩展词典组的开始。仅当将扩展词典附加到此对象时,此组才存在(可选) | 无默认值 |
| 360 | 所有者词典的硬所有者 ID/句柄(可选) | 无默认值 |
| 102 | 组的结束“}”(可选) | 无默认值 |
| 330 | 所有者 BLOCK_RECORD 对象的软指针 ID/句柄 | 未省略 |
| 100 | 子类标记 (AcDbEntity) | 未省略 |
| 67 | 不存在或零表示图元位于模型空间中。1 表示图元位于图纸空间中(可选) | 0 |
| 410 | APP:布局选项卡名 | 未省略 |
| 8 | 图层名 | 未省略 |
| 6 | 线型名(如果不是“BYLAYER”,则出现)。特殊名称“BYBLOCK”表示可变的线型(可选) | BYLAYER |
| 347 | 材质对象的硬指针 ID/句柄(如果不是“BYLAYER”,则出现) | BYLAYER |
| 62 | 颜色号(如果不是“BYLAYER”,则出现);零表示“BYBLOCK”(可变的)颜色;256 表示“BYLAYER”;负值表示层已关闭(可选) | BYLAYER |
| 370 | 线宽枚举值。作为 16 位整数存储和移动。 | 未省略 |
| 48 | 线型比例(可选) | 1.0 |
| 60 | 对象可见性(可选):0 = 可见;1 = 不可见 | 0 |
| 92 | 后面的 310 组(二进制数据块记录)中表示的代理图元图形中的字节数(可选) | 无默认值 |
| 310 | 代理图元图形数据(多行;每行最多 256 个字符)(可选) | 无默认值 |
| 420 | 一个 24 位颜色值,应按照值为 0 到 255 的字节进行处理。最低字节是蓝色值,中间字节是绿色值,第三个字节是红色值。最高字节始终为 0。该组码不能用于自定义图元本身的数据,因为该组码是为 AcDbEntity 类级别颜色数据和 AcDbEntity 类级别透明度数据保留的。 | 无默认值 |
| 430 | 颜色名。该组码不能用于自定义图元本身的数据,因为该组码是为 AcDbEntity 类级别颜色数据和 AcDbEntity 类级别透明度数据保留的。 | 无默认值 |
| 440 | 透明度值。该组码不能用于自定义图元本身的数据,因为该组码是为 AcDbEntity 类级别颜色数据和 AcDbEntity 类级别透明度数据保留的。 | 无默认值 |
| 390 | 打印样式对象的硬指针 ID/句柄 | 无默认值 |
| 284 | 阴影模式 0 = 投射和接收阴影 1 = 投射阴影 2 = 接收阴影 3 = 忽略阴影 | 无默认值 |
相关参考
相关概念
下表列出了组码或组码范围以及组码值的解释。在此表中,“固定”表明组码始终具有相同的用途。如果组码不固定,则其用途取决于上下文。
| 按数字次序排列的组码 | |
| 组码 | 说明 |
| -5 | APP:永久反应器链 |
| -4 | APP:条件运算符(仅与 ssget 一起使用) |
| -3 | APP:扩展数据 (XDATA) 标记(固定) |
| -2 | APP:图元名参照(固定) |
| -1 | APP:图元名。每次打开图形时,图元名都会发生变化,从不保存(固定) |
| 0 | 表示图元类型的字符串(固定) |
| 1 | 图元的主文字值 |
| 2 | 名称(属性标记、块名等) |
| 3-4 | 其他文字或名称值 |
| 5 | 图元句柄;最多 16 个十六进制数字的字符串(固定) |
| 6 | 线型名(固定) |
| 7 | 文字样式名(固定) |
| 8 | 图层名(固定) |
| 9 | DXF:变量名称标识符(仅在 DXF 文件的 HEADER 段中使用) |
| 10 | 主要点;直线或文字图元的起点、圆的圆心,等等 DXF:主要点的 X 值(后跟 Y 和 Z 值代码 20 和 30) APP:三维点(三个实数的列表) |
| 11-18 | 其他点 DXF:其他点的 X 值(后跟 Y 值代码 21-28 和 Z 值代码 31-38) APP:三维点(三个实数的列表) |
| 20, 30 | DXF:主要点的 Y 值和 Z 值 |
| 21-28, 31-37 | DXF:其他点的 Y 值和 Z 值 |
| 38 | DXF:如果非零,则为图元的标高 |
| 39 | 如果非零,则为图元的厚度(固定) |
| 40-48 | 双精度浮点值(文字高度、缩放比例等) |
| 48 | 线型比例;双精度浮点标量值;默认值适用于所有图元类型 |
| 49 | 重复的双精度浮点值。一个图元的可变长度表(例如,LTYPE 表中的虚线长度)中可能会出现多个 49 组。7x 组始终出现在第一个 49 组之前,用以指定表的长度 |
| 50-58 | 角度(在 DXF 文件中以度为单位,在 AutoLISP 和 ObjectARX 应用程序中以弧度为单位) |
| 60 | 图元可见性;整数值;未赋值或值为 0 时表示可见;值为 1 时表示不可见 |
| 62 | 颜色号(固定) |
| 66 | “后跟图元”标志(固定) |
| 67 | 空间 — 模型空间或图纸空间(固定) |
| 68 | APP:指示视口是处于打开状态但在屏幕上完全不可见,还是未激活或处于关闭状态 |
| 69 | APP:视口标识号 |
| 70-78 | 整数值,例如重复计数、标志位或模式 |
| 90-99 | 32 位整数值 |
| 100 | 子类数据标记(将派生类名作为字符串)从其他具体类派生的所有对象和图元类必须具有此标记。子类数据标记用于分离由同一对象的继承链中的不同类定义的数据。 对于从 ObjectARX 派生的每个不同的具体类的 DXF 名称来说,这是必须满足的额外要求(参见“子类标记”) |
| 102 | 控制字符串,后跟“{<任意名称>”或“}”。与扩展数据 1002 组码类似,不同之处在于当字符串以“{”开始时,其后可跟任意字符串,字符串的解释取决于应用程序。唯一允许的另外一个控制字符串是作为组结束符的“}”。除了执行图形核查操作期间外,AutoCAD 不会解释这些字符串。它们供应用程序使用 |
| 105 | DIMVAR 符号表条目的对象句柄 |
| 110 | UCS 原点(仅当将代码 72 设定为 1 时才显示) DXF:X 值;APP:三维点 |
| 111 | UCS X 轴(仅当将代码 72 设定为 1 时才显示) DXF:X 值;APP:三维矢量 |
| 112 | UCS Y 轴(仅当将代码 72 设定为 1 时才显示) DXF:X 值;APP:三维矢量 |
| 120-122 | DXF:UCS 原点的 Y 值,UCS X 轴和 UCS Y 轴 |
| 130-132 | DXF:UCS 原点的 Z 值,UCS X 轴和 UCS Y 轴 |
| 140-149 | 双精度浮点值(例如点、标高和 DIMSTYLE 设置) |
| 170-179 | 16 位整数值,例如表示 DIMSTYLE 设置的标志位 |
| 210 | 拉伸方向(固定) DXF:拉伸方向的 X 值 APP:三维拉伸方向矢量 |
| 220, 230 | DXF:拉伸方向的 Y 值和 Z 值 |
| 270-279 | 16 位整数值 |
| 280-289 | 16 位整数值 |
| 290-299 | 布尔标志值 |
| 300-309 | 任意字符串 |
| 310-319 | 具有相同表示和 1004 组码限制的任意二进制块:用最大长度为 254 个字符的十六进制字符串表示最大长度为 127 个字节的数据块 |
| 320-329 | 任意对象句柄;“按原样”获取的句柄值。它们在 INSERT 和 XREF 操作期间不进行转换 |
| 330-339 | 软指针句柄;指向同一个 DXF 文件或图形中的其他对象的任意软指针。在 INSERT 和 XREF 操作期间进行转换 |
| 340-349 | 硬指针句柄;指向同一个 DXF 文件或图形中的其他对象的任意硬指针。在 INSERT 和 XREF 操作期间进行转换 |
| 350-359 | 软所有者句柄;指向同一个 DXF 文件或图形中的其他对象的任意软所有者指针。在 INSERT 和 XREF 操作期间进行转换 |
| 360-369 | 硬所有者句柄;指向同一个 DXF 文件或图形中的其他对象的任意硬所有者指针。在 INSERT 和 XREF 操作期间进行转换 |
| 370-379 | 线宽枚举值 (AcDb::LineWeight)。作为 16 位整数存储和移动。自定义非图元对象可以使用整个范围内的组码,但图元类只能在其表示中使用 371-379 DXF 组码,因为 AutoCAD 和 AutoLISP 都始终假定 370 组码是图元的线宽。这使 370 组码与其他“通用”图元字段具有相同的行为 |
| 380-389 | PlotStyleName 类型枚举 (AcDb::PlotStyleNameType)。作为 16 位整数存储和移动。自定义非图元对象可以使用整个范围内的组码,但图元类只能在其表示中使用 381-389 DXF 组码,原因与上述线宽范围相同 |
| 390-399 | 表示 PlotStyleName 对象的句柄值的字符串,本质上是硬指针,但范围不同,更容易处理向后兼容。作为对象 ID(在 DXF 文件中为句柄)和 AutoLISP 中的特殊类型存储和移动。自定义非图元对象可以使用整个范围内的组码,但图元类只能在其表示中使用 391-399 DXF 组码,原因与上述线宽范围相同 |
| 400-409 | 16 位整数 |
| 410-419 | 字符串 |
| 420-427 | 32 位整数值。与真彩色一同使用时,表示 24 位颜色值的 32 位整数。高阶字节(8 位)为 0;低阶字节为包含“蓝色”值 (0-255)、然后是“绿色”值的无符号字符;次高阶字节是“红色”值。将此整数值转换为十六进制值将得到以下位掩码:0x00RRGGBB。例如,红色==200、绿色==100 和蓝色==50 的真彩色为 0x00C86432,而在 DXF 中以十进制表示则为 13132850 |
| 430-437 | 字符串;用于真彩色时,则为表示颜色名称的字符串 |
| 440-447 | 32 位整数值。用于真彩色时,表示透明度值 |
| 450-459 | 长整数 |
| 460-469 | 双精度浮点值 |
| 470-479 | 字符串 |
| 480-481 | 硬指针句柄;指向同一个 DXF 文件或图形中的其他对象的任意硬指针。在 INSERT 和 XREF 操作期间进行转换 |
| 999 | DXF:999 组码指示后面的行是注释字符串。SAVEAS 不会在 DXF 输出文件中包含这样的组,但 OPEN 则包括这些组并忽略注释。可以使用 999 组在您已编辑的 DXF 文件中包含注释 |
| 1000 | 扩展数据中的 ASCII 字符串(最多可以包含 255 个字节) |
| 1001 | 扩展数据的注册应用程序名(最多可以包含 31 个字节的 ASCII 字符串) |
| 1002 | 扩展数据控制字符串(“{”或“}”) |
| 1003 | 扩展数据图层名 |
| 1004 | 扩展数据中的字节数据块(最多可以包含 127 个字节) |
| 1005 | 扩展数据中的图元句柄;最多可以包含 16 个十六进制数字的字符串 |
| 1010 | 扩展数据中的点 DXF:X 值(后跟 1020 和 1030 组) APP:三维点 |
| 1020, 1030 | DXF:点的 Y 值和 Z 值 |
| 1011 | 扩展数据中的三维世界空间位置 DXF:X 值(后跟 1021 和 1031 组) APP:三维点 |
| 1021, 1031 | DXF:世界空间位置的 Y 值和 Z 值 |
| 1012 | 扩展数据中的三维世界空间位移 DXF:X 值(后跟 1022 和 1032 组) APP:三维矢量 |
| 1022, 1032 | DXF:世界空间位移的 Y 值和 Z 值 |
| 1013 | 扩展数据中的三维空间方向 DXF:X 值(后跟 1022 和 1032 组) APP:三维矢量 |
| 1023, 1033 | DXF:世界空间方向的 Y 和 Z 值 |
| 1040 | 扩展数据双精度浮点值 |
| 1041 | 扩展数据距离值 |
| 1042 | 扩展数据缩放比例 |
| 1070 | 扩展数据 16 位有符号整数 |
| 1071 | 扩展数据 32 位有符号长整数 |
相关参考
相关概念
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删