- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、 DXF 格式简介
DXF是Drawing eXchange File的缩写,意思为图形交换文件。DXF 格式是特定版本 AutoCAD 图形文件中所包含的全部信息的标记数据的一种表示方法。标记数据的意思是指在每个数据元素前都带一个称为组码的整数。组码的值表明了其后数据元素的类型,也指出了数据元素对于给定对象(或记录)类型的含意。图形文件中所有用户指定的信息都能够以 DXF 文件格式表示。
1.基本的DXF约定组码将按照在 DXF 文件中出现的次序列出,而且每章将以DXF文件中的相关区域来命名。
将与组码关联的值(组值)定义为整型、浮点数型或字符串型。下表为组码的范围。
组码值类型
组码范围 组值类型 0-9 字符串 (已经去除了255个字符的限制。尽管所有行被限制在2049个字节之内,但每行的字节数却没有直接限制。) 10-59 双精度三维点 60-79 16 位整数值 90-99 32 位整数值 100 字符串(最多 255 个字符,对于 UNICODE 字符串则更少) 102 字符串(最多 255 个字符,对于 UNICODE 字符串则更少) 105 表示十六进制句柄值的字符串 140-147 双精度标量浮点值 170-175 16 位整数值 280-289 8 位整数值 300-309 任意文字字符串 310-319 表示二进制数据组的十六进制值的字符串 320-329 表示十六进制句柄值的字符串 330-369 表示十六进制对象标识符的字符串 370-379 8 位整数值 380-389 8 位整数值 390-399 表示十六进制句柄值的字符串 400-409 16 位整数值 410-419 字符串 999 注释(字符串) 1000-1009 字符串(与0-9组码范围的限制一样) 1010-1059 浮点值 1060-1070 16 位整数值 1071 32 位整数值 HEADER 段 包含有关图形的基本信息。它由 AutoCAD 数据库版本号和一些系统变量组每个参数都包含一个变量名称及其关联的值。
CLASSES 段。包含应用程序定义的类的信息,这些类的实例出现在数据库的 BLOCKS、ENTITIES 和 OBJECTS 段中。类定义在类的层次结构中是固定不变的。
TABLES 段。 包含以下符号表的定义:
BLOCKS段。包含构成图形中每个块参照的块定义和图形图元。
ENTITIES 段。包含图形中的图形对象(图元),其中包括块参照(插入图元)。实体段记录了每个实体的名称、所在图层及其名字、线型、颜色等。
OBJECTS 段。 包含图形中的非图形对象。除图元、符号表记录以及符号表以外的所有对象都存储在此段。OBJECTS 段中的条目样例是包含多线样式和组的词典。
THUMBNAILIMAGE 段。包含图形的预览图像数据。此段为可选。
如果使用 SAVE 或 SAVEAS 命令的“选择对象”选项,那么所得到的 DXF 文件的 ENTITIES 段将只包含选择的图元。
一个DXF文件由若干个组构成,每个组占两行,第一行为组的代码,第二行为组值。组代码相当于数据类型的代码,它由CAD图形系统所规定,而组值为具体的数值,二者结合起来表示一个数据的含义和值。例如,代码10代表一个点的X坐标,占一行,而其第二行4.5425
则是点X坐标的具体数值,二者结合表示一点,其X坐标值为4.5425。
(1)组代码和组值的类型组代码为一个非负的不超过三位的整数,而组值由组代码的类型决 定。例如: 代码0~9组值类型为字符型。 代码10~59组值类型为实型。 代码60~79组值类型为整型。 代码999表示解释行。 (2)组代码的含义每个组代码均有规定的含义,有些代码含义是固定的,而有些组代码则因应用场合不同而有多个含义,应具体分析。另外,一些代码是备用的,目前版本尚未用到,现将他们的含义举例介绍如下。
0:表示一个事物的开始,如一个块、表、图层、实体等。 1:字符型数据的值,如TEXT的字符串、文件名、属性值等。 2:一个事物的名字,如段、表、块、线型、视图等的名字。 3~5:字符型数据的值,如文件名、线型说明等。 6:线型名(固定类型)。 8:图层名(固定类型)。
关于实体的坐标与相应的组代码10~18、20~28、30~38的用法应根据实体所用到点的数量,按组代码个位的0、1、2、……的顺序使用。
例如LINE的起点组代码为10、20、30,而11、21、31为其终点。其他类似。
DXF文件的结构相当复杂,完整读取DXF文件也是一项异常繁琐的工程。在实际应用中,为了提取图形的实体信息,可以省略DXF文件中的许多项,只要获取其中的层表、块段和实体段,
文档评论(0)