显示页面讨论过去修订反向链接回到顶部 本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。 ====== OBJECTS 段 ====== ===== 什么是 OBJECTS 段 ===== OBJECTS 段(对象段)存储图形中的**非图形对象**,即没有直接图形表示的对象。这些对象包括词典、布局、材质、组、标注关联等。OBJECTS 段是 DXF 中结构最复杂的段之一。 OBJECTS 段的结构与 ENTITIES 段类似,每个对象以组码 **0** 后跟对象类型名开始。 ===== 常用对象组码 ===== 以下组码适用于 OBJECTS 段中的所有对象: ^ 组码 ^ 说明 ^ | 0 | 对象类型名 | | 5 | 句柄 | | 8 | 图层名(某些对象) | | 100 | 子类标记 | | 102 | 控制字符串 | | 330 | 软所有者 ID | | 340 | 硬指针句柄 | | 350 | 软所有者句柄 | | 360 | 硬所有者句柄 | ===== 主要对象类型 ===== ==== DICTIONARY(词典) ==== 词典是最重要的非图形对象之一,用于组织和管理其他对象。AutoCAD 使用根词典(Named Object Dictionary)来管理所有的词典。 ^ 组码 ^ 说明 ^ | 100 | AcDbDictionary | | 2 | 词典名称 | | 281 | 硬标签标志(0=软,1=硬) | | 3 | 条目名称(可重复) | | 350 | 软所有者句柄(与条目对应) | 预定义的根词典条目: | 条目名 | 说明 | | ACAD_GROUP | 组集合 | | ACAD_LAYOUT | 布局集合 | | ACAD_MATERIAL | 材质集合 | | ACAD_MLEADERSTYLE | 多重引线样式 | | ACAD_MLINESTYLE | 多线样式 | | ACAD_PLOTSETTINGS | 打印设置 | | ACAD_TABLESTYLE | 表格样式 | | ACAD_VBA_PROJECT | VBA 项目 | | ACAD_VISUALSTYLE | 视觉样式 | 示例: <code> 0 DICTIONARY 5 F0 100 AcDbDictionary 280 1 2 ACAD_LAYOUT 350 F1 2 ACAD_MATERIAL 350 F2 </code> ==== DICTIONARYVAR(词典变量) ==== ^ 组码 ^ 说明 ^ | 100 | AcDbDictionaryVar | | 1 | 变量值字符串 | ==== LAYOUT(布局) ==== 布局对象定义图纸空间中的布局设置: ^ 组码 ^ 说明 ^ | 100 | AcDbLayout | | 1 | 布局名称 | | 2 | 与该布局关联的块表记录名称 | | 7 | 布局关联的块名 | | 10,20,30 | 布局插入点(基点) | | 11,21,31 | 布局左上角延伸范围 | | 12,22,32 | 布局右下角延伸范围 | | 14,24,34 | 打印区域左上角 | | 15,25,35 | 打印区域右下角 | | 70 | 布局标志位 | | 71 | 打印比例相关标志 | | 72 | 打印图纸单位 | | 73 | 打印比例因子 | | 40 | 打印区域宽度 | | 41 | 打印区域高度 | | 42 | 打印比例分子 | | 43 | 打印比例分母 | | 44 | 打印偏移 X | | 45 | 打印偏移 Y | | 76 | 打印参数 | | 331 | 块表记录句柄 | ==== PLOTSETTINGS(打印设置) ==== ^ 组码 ^ 说明 ^ | 100 | AcDbPlotSettings | | 1 | 页面设置名称 | | 2 | 打印设备 | | 3 | 打印样式表 | | 4 | 打印配置(.pc3 文件名) | | 6 | 打印范围 | | 10,20 | 打印原点 | | 11,21 | 图纸尺寸(宽、高) | | 12,22 | 打印区域 | | 40 | 打印比例 | | 41 | 单位 | | 70 | 标志位 | | 72 | 打印方向 | ==== MATERIAL(材质) ==== ^ 组码 ^ 说明 ^ | 100 | AcDbMaterial | | 1 | 材质名称 | | 2 | 材质类别 | | 3 | 材质描述 | | 40 | 环境色因子 | | 41 | 漫射色因子 | | 42 | 镜面色因子 | | 43 | 发光色因子 | | 44 | 不透明度 | | 45 | 反射度 | | 46 | 粗糙度 | | 47 | 折射率 | | 70 | 材质标志 | | 140 | 贴图缩放 U | | 141 | 贴图缩放 V | | 142 | 贴图偏移 U | | 143 | 贴图偏移 V | ==== GROUP(组) ==== 组对象用于将多个图元组织在一起: ^ 组码 ^ 说明 ^ | 100 | AcDbGroup | | 2 | 组名 | | 300 | 组描述 | | 70 | 组标志(0=未命名,1=命名) | | 340 | 成员图元句柄(可重复) | ==== MLINESTYLE(多线样式) ==== ^ 组码 ^ 说明 ^ | 100 | AcDbMLineStyle | | 2 | 多线样式名称 | | 3 | 多线样式描述 | | 40 | 默认偏移 | | 41 | 元素数量 | | 49 | 元素偏移(可重复) | | 62 | 元素颜色(可重复) | | 6 | 元素线型(可重复) | | 70 | 填充颜色(-1=无填充) | | 71 | 起点闭合标志 | | 72 | 终点闭合标志 | | 73 | 起点角度 | | 74 | 终点角度 | ==== TABLESTYLE(表格样式) ==== ^ 组码 ^ 说明 ^ | 100 | AcDbTableStyle | | 2 | 表格样式名称 | | 3 | 描述 | | 70 | 方向(0=向下,1=向上) | | 71 | 单元类型数量 | | 40 | 水平单元间距 | | 41 | 垂直单元间距 | | 62 | 背景色(可选) | | 7 | 文字样式(可选) | | 140 | 文字高度 | | 170 | 对齐方式 | | 280 | 数据单元的标志位 | ==== XRECORD(扩展记录) ==== XRECORD 用于存储任意应用程序定义的数据: ^ 组码 ^ 说明 ^ | 100 | AcDbXrecord | | 280 | 复制记录标志 | | 1+ | 各种组码数据 | XRECORD 可以包含各种标准组码(1-369 范围)来存储数据。 ==== DIMASSOC(标注关联) ==== ^ 组码 ^ 说明 ^ | 100 | AcDbDimAssoc | | 1 | 关联路径数据 | ==== FIELD(字段) ==== ^ 组码 ^ 说明 ^ | 100 | AcDbField | | 1 | 字段代码字符串 | | 2 | 字段值 | | 3 | 字段格式字符串 | | 4 | 字段表达式 | | 90 | 字段类型 | | 91 | 求值标志 | | 92 | 字段格式类型 | ==== IMAGEDEF / IMAGEDEF_REACTOR ==== 用于光栅图像参照: ^ 组码 ^ 说明 ^ | 100 | AcDbRasterImageDef | | 1 | 图像文件名 | | 10,20 | 图像尺寸(像素) | | 11,21 | 默认图像尺寸(单位) | ==== VBA_PROJECT ==== ^ 组码 ^ 说明 ^ | 100 | AcDbVbaProject | | 1 | VBA 项目数据 | ===== 对象所有权关系 ===== OBJECTS 段中的对象之间存在所有权关系,由句柄引用表示: * **软所有权**(组码 350-359):所有者可以删除被所有者,但不强制执行 * **硬所有权**(组码 360-369):所有者可以删除被所有者,强制执行 * **软指针**(组码 330-339):引用其他对象,但不拥有 * **硬指针**(组码 340-349):引用其他对象,视为强引用 典型的对象层次结构: <code> Named Object Dictionary (ACAD_LAYOUT) └── LAYOUT "Model" (模型空间布局) └── LAYOUT "Layout1" (图纸空间布局) Named Object Dictionary (ACAD_MATERIAL) └── MATERIAL "ByLayer" └── MATERIAL "ByBlock" Named Object Dictionary (ACAD_GROUP) └── GROUP "MyGroup" Named Object Dictionary (ACAD_TABLESTYLE) └── TABLESTYLE "Standard" </code> ===== 编程注意事项 ===== 1. **根词典**:OBJECTS 段通常以根词典(Named Object Dictionary)开始,该词典句柄通常固定为 "F0"。 2. **布局对象**:每个 DXF 文件至少应有一个 LAYOUT 对象(模型空间布局)。 3. **句柄一致性**:OBJECTS 段中的句柄引用必须与文件中其他地方的对象 ID 一致。 4. **对象可选性**:简单的 DXF 文件可以省略 OBJECTS 段,但包含复杂对象(如布局、填充图案)时必须包含。 5. **XRECORD 应用**:自定义应用程序数据通常存储在 XRECORD 对象中,通过词典组织。 ===== 本章小结 ===== OBJECTS 段虽然不如 ENTITIES 段常用,但在处理布局、材质、组等高级特性时必不可少。理解 OBJECTS 段的结构和对象间的关系有助于开发更完善的 DXF 应用程序。 登录 Detach Close 该主题尚不存在 您访问的页面并不存在。如果允许,您可以使用创建该页面按钮来创建它。 dxf格式/07_dxf_objects.txt 最后更改: 2026/06/17 09:44由 张叶安 登录