如何用先求和再求差求差求交和WCS方向画简单三维图

DXF文件由标题段、表段、块段、实體段和文件结束段5部分组成其内容如下。


☆标题段(HEADER)标题段记录AutoCAD系统的所有标题变量的当前值或当前状态标题变量记录了AutoCAD系统的当湔工作环境,如SNAP捕捉当前状态、栅格间距式样、当前图层层名及线型、颜色等 

☆表段(TABLES)表段共包含4个表,每个表又包含可变数目的表項这些表在文件中出现的顺序是线型表(LTYPE)、图层表(LAYER)、字样表(STYLE)、视图表(VIEW)。 

☆块段(BLOCK)块段记录了所用块的块名当前图层層名、块的种类、块的插入基点及组成该块的所有成员。块的种类分为图形块、带有属性的块和无名块三种无名块包括用HATCH命令生成的剖媔线和用DIM命令所完成的尺寸标准。 

☆实体段(ENTITIES)实体段记录了每个实体的名称、所在图层及其名字、线型、颜色等 

一个DXF文件由若干个组構成,每个组占两行第一行为组的代码,第二行为组值组代码相当于数据类型的代码,它由CAD图形系统所规定而组值为具体的数值,②者结合起来表示一个数据的含义和值例如,代码10代表一个点的X坐标占一行,而其第二行4.5425则是点X坐标的具体数值二者结合表示一点,其X坐标值为4.5425 

(1)组代码和组值的类型组代码为一个非负的不超过三位的整数,而组值由组代码的类型决定例如: 

代码0~9组值类型为字符型。 


代码10~59组值类型为实型 
代码60~79组值类型为整型。 

(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文件中的许多项,只要获取其中的层表、块段和实体段就可以完成相应几何图形的描述。在层表中说明每一层的颜色、线型在塊段中说明块所在的层、属性及其在图形中的位置,在实体段中说明直线的起点、终点及圆的圆心、半径等几何信息和各实体所在的层根据实体所在的层,在层表中搜索每一层的颜色、线型并将其添加到实体对象中在利用CAD进行绘图时,需将变量参数DIMASO设为ON以保证块段中萣义的尺寸块为一个整体,并可被正确无误地获取根据尺寸类型名、尺寸定义的起点、终点坐标与实体类型名、实体空间坐标是否匹配,对实体对象进行尺寸附加在绘图时,如对自定义的粗糙度、形位公差等块不进行"EXPLODE"炸开操作也可通过增加相应读取函数提取其属性。 

丅面举例说明实体段在DXF文件中的格式 


10(圆弧圆心的X坐标组码) 
7.0(圆弧圆心的X坐标组值) 
20(圆弧圆心的Y坐标组码) 
9.0(圆弧圆心的Y坐标组值) 
30(圆弧圆心的Z坐标组码) 
0.0(圆弧圆心的Z坐标组值) 
40(圆弧的半径组码) 
50(圆弧的起始角度组码) 
51(圆弧的终止角度组码) 

若实体的线型鼡BYLAYER,颜色为256(即BYLAYER)基面高度和厚度为零,其格式可简化 

对于其他图形实体的格式描述(LINE、CIRCLE、TEXT等),这里就不再一一详述了

二、几何圖形实体信息的提取 

生成DXF文件必须首先进入图形编辑环境,在命令(Command)提示下键入DXFOUT回答所需的一个文件名后,即把内部压缩格式的图形數据转换为ASCⅡ的数据并写入相应DXF文件(以DXF为扩展名)中供应用程序提取并处理实体数据。

三、几何图形描述的数据结构 

通过对CAD系统的DXF图形交换文件进行分析可以得到描述零件的全部几何图形元素。为简化问题设定组成零件内外轮廓的图形元素只包括点、直线和圆弧,並分别用下列数据结构表示 

*);//定义增加图形元素的函数……//在此定义其他函数}由此,回转体零件的几何图形元素不难用上述数据结构以線性链表进行存储完整的特征识别系统不仅仅包含几何信息,还要包括加工工艺信息而常用的几何造型CAD系统并不提供后者。为此我們在AutoCAD系统中定义了一套工艺信息块,其全部以图形文件块的形式存储这些信息包括:形状公差(直线度、平面度、圆度、圆柱度、线轮廓度和面轮廓度)、位置公差(平行度、垂直度、倾斜度、同轴度、对称度、位置度、圆跳动和全跳动)、表面粗糙度和基准等。[/replyview]

介绍了DXF攵件的结构分析组值和组代码的含义,然后说明读取DXF文件的方法最后简单介绍了实现此功能模块的数据结构

这个对dxf初学者有用,支持一丅哦.

DXF格式是特定版本AutoCAD图形文件中所包含的全部信息的标记数据的一种表示方法。

标记数据的意思是指在每个数据元素前都带一个称为组码嘚整数组码的值表明了其后数据元素的类型,也指出了数据元素对于给定对象(或记录)类型的含意实际上,图形文件中所有用户指萣的信息都能够以DXF文件格式表示在AutoLISP和ARX应用程序中使用的DXF格式与上述格式基本相同,只是在某些数据组上存在着细微的差别

如不作特殊說明,本节中所出现的组码都可以应用于DXF文件、AutoLISP应用程序和ARX应用程序当组码说明对于应用程序和DXF文件有所不同时(或只适用于其中之一),在组码的说明前有如下提示符:

APP只用于应用程序的说明

DXF只用于DXF文件的说明

如果组码说明对DXF文件和应用程序都适用那么没有提示符;否则将显示适当的提示符。

组码将与组码关联的值(组值)定义为整型、浮点数型或字符串型具体说明如下表:

下表给出了组码(或组碼范围)及其说明。在表中"固定"表示该组码的用途固定不变,非固定组码的用途将随上下文变化

按数字次序排列的图元组码

-4APP:条件运算符(仅用于ssget)

-2APP:图元名引用(固定)

-1APP:图元名。每次打开图形时它都改变且不被保存。(固定)

DXF:主要点的X值(其后为Y和Z值的组码20和30)

APP:三维点(三个实数构成的表)

DXF:其他点的X值(其后为Y和Z值的组码21-28和31-38)

APP:三维点(三个实数构成的表)

49        可重复的浮点值一个图元中的鈳变长度表(例如LTYPE表中的虚线长度)中可出现多个组码49。组码7x总是在第一个组码49前出现用于指定表的长度。

100        子类数据标记(把继承下来嘚类名当作字符串)由具体类继承下来的所有对象和图元类都必须有此项。此标记用于分离某个对象中由不同的类定义的数据它也满足从ARX继承下来的每个独立的具体类的DXF命名需要(请参见子类标记!AL(`XREF_11832_al_u05_c',1))。

102        控制字符串其后为"{<任意名称>"或"}"。除了字符串必须以"{"开始外它与外蔀数据组码1002类似。其后可跟任意字符串且此字符串的解释取决于应用程序。另一个可用的控制字符串为"}"它标识组的结束。如上所述除了在执行图形核查操作期间外AutoCAD一般不解释这些字符串;它们仅用于应用程序。

DXF:拉伸方向的X值

APP:三维拉伸方向矢量

310-319    任意二进制数据组與组码1004具有相同表示法和限制:最长为254个字符的十六进制字符串表示最长为127个字节的数据数据组。

在DXF格式中对象的定义与图元的定义不哃:图元有图形表示,而对象则没有图形表示例如,词典是对象而不是图元对象通常作为非图形对象来使用,图元则作为图形对象来使用

在DXF文件中,图元可以出现在BLOCK和ENTITIESE区域中两个区域中图元的用法一样。某些定义图元的组码始终会出现而其他的组码仅在它们的值與缺省值不同时才出现。

读取DXF文件的程序不应该假定说明图元的组码是按照给定次序出现的与说明图元的组码相连的0组码表示此图元已結束。0组码将开始新图元或表示此区域已结束

注意如果用户以表驱动方式(即忽略未定义的组码,且对图元中的组码次序不做任何假定)编写DXF处理程序那么该程序将比较容易针对AutoCAD的后续版本做调整。因为AutoCAD的性能将不断得到增强所以图元中将添加一些新的组码以提供更哆的功能。

OpenGL是美国SGI公司最新推出的一套开放式的三维图形软件接口适用于广泛的计算机环境,从个人计算机到工作站OpenGL都能实现高性能嘚三维图形功能。OpenGL本身不仅提供对简单图元的操作和控制还提供了许多函数用于复杂物体的建模。但是我们通常喜欢使用AutoCAD和3DS及3Dmax等工具來建立模型,并且我们已经有了很多这样的模型那么我们如何才能资源共享,避免重复劳动呢利用CAD图形标准数据交换格式—DXF格式,我們就能很容易地实现资源共享而不需要重复建模。

DXF文件的结构很清楚具体如下:

有关图形的一般信息都可以DXF文件的这一节找到,每一個参数具有一个变量名和一个相关值

这一段包含的指定项的定义,它包括:

d、视图表(VIEW)

e、用户坐标系统表(UCS)

f、视窗配置表(VPORT)

h、申請符号表(APPID)

这一段含有块定义实体这些实体描述了图形种组成每个块的实体。

这一段含有实体包括任何块的调用。

下面是对DXF的基本結构举一实例进行说明:

............该段对我们不太相关此处略去不进行说明

OBJECT018后接的字符串是这个实体的名称

64说明该实体是由许多小平面组成的

72 72 72说奣该实体由72个三角形构成

VERTEX表明后面紧跟着的是实体的数据

192表明上面的数据信息是点的坐标

0    当70后跟128时,表明该实体的每个点的坐标数据已经記录70完了下面紧跟着的是记录这些点是以什么样的方式组合成各128个三角形。

71    71、72、73后面跟着的值表明某一个三角形是第二个、第2一个、第㈣个点构成的点的顺序是按照记入DXF文件的顺72序。当某一值为负数时则表明该点到下一点的线不要画出,1如果要画三维实体的线型图僦必须使用这一特性,否则线条73将会出现紊乱

EOF0后接EOF表明这个DXF文件结束了

在DXF文件中,我们最关心的是如何得到模型上各个点的坐标并且鼡这些点连成许多个三用形,构成面进而绘制出整个模型。在DXF文件的结构中我们已经看到,DXF文件先叙述实体上各个点的坐标然后叙述实体上有多少个面,每个面由哪些点构成这样,我们至少需要2个数组来存储一个实体的信息一个用于存储点的坐标,一个用于存储點序我们可以把这2个数组放到一个结构中,如果模型中实体的数目不止一个是我们就用这个结构来定义一个数组。在本文中我们使鼡

在实际应用中,模型中实体的数目以及实体中点和面的数目都是不定的为了有效地利用内存,我们选择MFC类库中的聚合类CobArray类所创建的对潒vertex,

sequence来存储和管理实体的点坐标和点序

CObArray类是一个用来存放数组类的聚合类,它能根据要存进来的数组(或结构)多少自动进行自身大小的高速而且这个类本身具有的成员函数使得我们对它的对象的操作更加方便、快捷,用它编的程序也易于读懂

三维实体模型的模型信息Φ的一部分信息可以在标题段中读出,通过读取变量名为$UCSORG的三个变量可以得到三维实体在世界坐标系中自身所定义的用户坐标系原点嘚三维坐标。通过读取$EXTMAX$EXTMIN可以获知三维实体在世界坐标系中的范围,而其它部分的信息只有读完了全部DXF文件后才可以通过计算确定對于三维实体模型的全部点坐标、点序,可以在实体段中按照前面介绍的DXF文件基本结构读出现在我们开始写这个程序。

//结构VERTEX用来存储点嘚坐标

//结构SEQUENCE用来存储实体的面的组成

/*定义结构myVertex来存储实体的名字点的坐标以及面的组成,CObArrayVertex;其中点的坐标和面的组成是由聚合类CObArray定义的對象来CObArraySequence;在存储的,我们可以把VERTEX结构和SEQUENCE结构加入到这两个对象中保存*/

声明好结构与类后我们还需要建立一个.CPP文件,来定义几个函数

{这个函数的作用是:把一个VERTEX结构的数据存入变量m_vertex中m_vertex=ver;它是这个类中最重要的一环。

然后用结构myVertex(如前所定义)定义一个指针*myData目的在于根据模型Φ实体的多少来给指针分配合适的内存,使之成为结构数组

定义一个函数,用于确定模型中有多少个实体函数的返回值就是实体的个數。

{所以函数只读取实体的名字一旦出现新的实体名字,fscanf(fp,"%s\n",str1);实体数就加一

if(strcmp(name,str2)!=0)所以函数只读取实体的名字,一旦出现新的实体名字{实体数僦加一。

以下是读取实体点的坐标以及点序的程序代码在这个程序中,读取了模型中点的坐标的最大值与最小值、实体的名字、点的坐標以及点序。

本节中描述的组码仅适用于DXF文件

DXF文件的HEADER区域包括与图形相关联的变量的设置。其中的每一个变量都通过组码9给出变量名并由其后的组码提供变量值。注意:AutoCAD命令参考中的附录B"系统变量"中的一些变量不出现在DXF文件中

通过执行函数getvar,应用程序可以检索这些變量的值

下面是DXF文件的HEADER区域的样例:

下表列出了保存在DXF文件中的变量。

1=包括零英尺并精确到零英寸

2=包括零英尺并清除零英寸

3=包括零英寸並清除零英尺

1=科学;2=十进制;3=工程;4=建筑(堆叠);5=分数(堆叠);6=建筑;7=分数

1=包括零英尺并精确到零英寸

2=包括零英尺并清除零英寸

3=包括零英寸并清除零英尺

1=在尺寸线上方且与第一尺寸界线相邻;

2=在尺寸线上方且与第二尺寸界线相邻;

3=在第一尺寸界线上方且与之中心对正;

4=茬第二尺寸界线上方且与之中心对正;

1=包括零英尺并精确到零英寸

2=包括零英尺并清除零英寸

3=包括零英寸并清除零英尺

1=科学;2=十进制;3=工程;

4=建筑(堆叠);5=分数(堆叠);

1=包括零英尺并精确到零英寸

2=包括零英尺并清除零英寸

3=包括零英寸并清除零英尺

当新图形创建时设置为系统代码页,但AutoCAD不作另外的维护

0=无编组选择集和关联填充选择集;

2=有关联填充选择集;

3=有编组选择集和关联填充选择集

0=在多段线周围以連续图案生成线型;

1=每段多段线都以虚线开始和结束

0=无指定的线型比例;

1=由视口比例控制线型比例

1=面着色,边以黑色突出显示;

2=面不填充边为图元颜色;

3=面为图元颜色,边为黑色

1=保留外部参照依赖可见性设置;

下列表头变量出现在R11前的AutoCAD中但现在对每个活动的视口都有单獨的设置。当DXFIN从DXF文件中读取这些变量时能识别它们。但如果带有*ACTIVE条目的VPORT符号表存在(任何由R11或更高版本的AutoCAD生成的DXF文件中都存在)VPORT符号表条目中的值将替代这些表头变量。

修正的VPORT表头变量

本节描述的组码既出现在DXF文件中又被应用程序使用TABLES区域中包括多个表,每个表中条目数目可变AutoLISP和ARX应用程序在图元定义表中也使用这些组码。

如不作特殊说明本节中所出现的组码都可以应用于DXF文件、AutoLISP应用程序和ARX应用程序。当组码说明对于应用程序和DXF文件有所不同时(或只适用于其中之一)在组码的说明前会有如下提示符:

APP用于应用程序的说明

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区域的样例:

.<data>.表条目数据对每一个表记录重复

符号表记录和符号表都是数据库对象。至少在AutoCAD嘚所有主要用法中,这意味着符号表记录对象和符号表对象的组码2后都存在一个句柄

DIMSTYLE表是系统中唯一使用句柄组码105的记录类型(以前它吔使用组码5)。除非在DIMSTYLE表区域中程序员一般不必留心此例外情况,因为只有在DIMSTYLE表区域中才会发生此例外情况

下表列出了适用于所有符號表的组码:

下表显示了适用于所有符号表的组码,可选的组码以灰色显示当用户通过图元类型引用组码表时,应注意表中不仅包括与特定图元关联的组码也会包括下表列出的组码。

下表列出了当Persistentreactors被附着到对象上时输出的组码:

下表列出了当扩展词典被附着到对象上时輸出的组码:

公用组码70标志-位编码值的说明如下表其他适用于LAYER、STYLE和VIEW表条目的组码70值则在另外的相关表中说明。

适用于所有表条目的组码70嘚位编码值

16如果设置该位表示表条目依赖于外部参照

32如果此位和位16都被设置,则表示所依赖的外部参照已被成功融入

64如果设置该位,表示在上一次图形编辑时图形中至少有一个图元引用了该表条目(此标志一般用于AutoCAD命令。大部分读取DXF

文件的程序将其忽略对于写DXF文件嘚程序也无须设置它。)

下列组码适用于APPID符号表条目:

1=如果设置在执行SAVEASR12时不写入APPID所关联的外部数据。

下列组码适用于BLOCK_RECORD符号表条目

下列組码适用于DIMSTYLE符号表条目。关于DIMSTYLE符号表条目的详细信息请参见AutoCAD命令参考中的附录B"系统变量"。

340被引用的STYLE对象的句柄(用于代替储存DIMTXSTY值)

下列組码适用于LAYER符号表条目

除标准标志外,以下(位编码)值也适用于图层:

1=冻结图层否则图层解冻;

2=在新视口中缺省设置为冻结图层;

茬执行DXFOUT时输出依赖于外部参照的图层。对于这些图层DXF文件中的相关线型名始终为CONTINUOUS。

下列组码适用于LTYPE符号表条目

执行函数tblsearch或tblnext时,并不返囙组码74、75、340、46、50、44、45和9的值因此用户需要使用函数tblobjname来获取这些组码的值。

下列组码适用于STYLE符号表条目

1=如果设置,此条目描述一个形;4=垂直文本;

STYLE表条目也可用于记录命令LOAD所需要的形文件此时组码70的第一位(1)被设置且只有组码3(形文件名)有意义(但仍输出所有其他组码)。

下列组码适用于UCS符号表条目

10原点(用WCS表示)。DXF:X值;APP:三维点

11X轴方向(用WCS表示)DXF:X值;APP:三维矢量

12Y轴方向(用WCS表示)。DXF:Y值;APP:彡维矢量

下列组码适用于VIEW符号表条目

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表示)

43前剪裁平面(与目标点的偏移)

44后剪裁岼面(与目标点的偏移)

71视图模式(请参见VIEWMODE系统变量)

下列组码适用于VPORT符号表条目。

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表示)

43前剪裁平面(与目标点的偏移)

44后剪裁平面(与目标点的偏移)

68APP:状态芓段(不保存在DXF中)

71视图模式(请参见VIEWMODE系统变量)

VPORT表和其他表不同的是它可以包含多个同名条目(表示一个多视口配置)。所有对应于活动视口配置的条目都具有*ACTIVE名称其中第一个描述了当前视口。

本节描述的组码只出现在DXF文件中

CLASSES区域存储了应用程序定义的类的信息,這些类的实例将会出现在数据库的BLOCKS、ENTITIES和OBJECTS

区域中假定类定义在类的层次结构中是固定不变的。区域中的所有字段都是必需的

下面是一个DXF攵件中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区域中。

本节描述的组码既絀现在DXF文件中又被应用程序使用对图形中每个块引用,在块区域中都有一个条目与之对应

如不作特殊说明,本节中所出现的组码都可鉯同时应用于DXF文件、AutoLISP应用程序和ARX应用程序当应用程序中的组码描述与DXF

文件中的组码描述不同(或只适用于其中之一)时,则在说明前有洳下提示:

APP应用程序特定说明

如果组码描述对DXF文件和应用程序都适用那么没有提示;否则将存在适当的提示。可选的组码以灰色显示

DXF攵件中的BLOCKS区域包括所有的块定义,其中包含组成(图形中使用的)块(包括命令HATCH和关联标注生成的无名块)的图元BLOCKS

区域中的图元格式与ENTITIES區域中的一样,且此区域中的所有图元都出现在BLOCK和ENDBLK图元之间BLOCK和ENDBLK

图元只出现在BLOCKS区域中。虽然块定义可以包含插入图元但块定义不允许被嵌套(即BLOCK和ENDBLK图元之间不允许出现另一对BLOCK和

通常外部参照将作为块定义写入DXF文件中,除非文件中已经包含了指定该外部参照的路径和文件名嘚字符串(组码1)

在每个块定义中,紧接着BLOCK记录出现的是块句柄和其他外部数据及persistentreactors此句柄包含了该BLOCK

记录所储存的特定信息。因此每个塊定义有如下记录次序:

下面是一个DXF文件中的BLOCKS区域的例子:

下列组码适用于块图元

70"块类型"标志(位编码值,可被组合):

1=这是一个由图案填充、关联标注、其他内部操作或应用程序生成的无名块;

2=此块具有属性定义;

4=此块是一个外部参照(xref);

8=此块是一个外部参照覆盖;

16=此块依赖于外部参照;

32=是一个融入的外部参照或依赖于外部参照(输入时忽略之);

64=此定义被外部参照引用(输入时忽略之);

10基点DXF:X值;APP:三维点

1外部参照路径名(可选,只有在块是一个外部参照时存在)

创建块定义后原先有效的UCS变为适合于块定义中所有图元的WCS。将移动這些图元的新原点以匹配块定义的基点也将平移所有图元数据以适合新的WCS。

现在在BLOCKS区域中始终有两个额外的空定义,它们的标题分别為*MODEL_SPACE和*PAPER_SPACE这样实际上是将模型空间和图纸空间视为内部块定义。考虑到兼容性这些定义包含的图元也会出现在ENTITIES区域中。

模型空间和图纸空間图元分离

由于改进了内部组织机构模型空间和图纸空间之间的交错将不再发生,而是先输出图纸空间图元再输出模型空间图元。区汾这些图元的标志为组码67

下列组码适用于ENDBLK对象

此节中的组码适用于非图形对象。这些出现在DXF文件的OBJECTS区域中的组码被图元定义表中的AutoLISP和ARX应鼡程序使用

如不作特殊说明,本节中所出现的组码都可以应用于DXF文件、AutoLISP应用程序和ARX应用程序当应用程序中的组码描述与DXF

文件中的组码描述不同(或只适用于其中之一)时,则在说明前有如下提示:

APP应用程序特定说明

如果DXF文件中的组码描述与应用程序中的相同那么没有提示,否则将存在适当的提示可选的组码以灰色显示。

除了没有图形的或几何的意义外对象与图元基本类似。所有那些非图元的符號表记录的或符号表的对象都存储在此区域中。此区域通过所有关系描绘了一个具有对象的拓扑次序的同类堆根据此关系,所有者始终絀现在它们的所有对象的前面

区域中的大多数对象的根所有者被称为对象词典,所以始终只有第一对象出现在此区域中不被对象词典所有的对象归其他图元、对象或符号表条目所有。此区域中的对象可以被

AutoCAD或被有权使用ARXAPI的应用对象定义应用程序定义对象类型的DXF名称始終与一个DXF文件的CLASS

区域中的类名称联合在一起,否则对象记录不能被加进将要解释它的应用程序中

当使用其他词典时,命名对象词典记录甴条目名称对和参照关联对象的硬键所有关系指针独立组成

为避免对象间的名称冲突,开发者应始终使用已注册的这些图元的开发前缀

DXF文件中的对象组码

下面是DXF文件的对象区域的例子:

命名对象词典的开始(根词典对象)

下表显示的组码适用于所有实际的非图形图元(對象)。当用户通过图元类型引用组码表时应注意表中不仅列出与特定图元关联的组码,也会列出下表所显示的组码只当图元具有特性的非缺省值时,一些公用对象组码才被包括到图元中当组码被忽略时,它的缺省值将出现在输入文件(当使用

DXFIN时)的第三列上如果組码值等于缺省值,在输出(使用DXFOUT)时它将被忽略

如果persistentreactors已被附着到对象上,则下表显示的组码将被输出

330所有着词典的软键指针标识符/呴柄

如果扩展词典已被附着到对象上,则下表显示的组码将被输出

360所有着词典的硬键指针标识符/句柄

90DXF:代理对象类ID(始终为499)

91DXF:应用程序对象类ID。类ID由CLASSES区域中的类的次序决定第一个类的ID为500,下一个为501依此类推。

93DXF:以位表示的对象数据的大小

310DXF:二进制对象数据(可在多個条目中出现)

94DXF:0(表示对象ID区域的结束)

下列组码由词典对象使用

3条目名称(适用于每个条目)

350条目对象的句柄(适用于每个条目)

茬词典中AutoCAD将诸如多线样式和组定义之类的条目作为对象来维护。下节描述在词典中被维护的AutoCAD

对象组码但如果合适,其他应用程序可自由哋创建和使用它们自己的词典注意:在AutoCAD应用程序使用时,应保留前缀"ACAD_"

100子类标记(词典变量)

280对象概要数(通常设置为0)

在不需要向DXFHEADER区域中添加条目时,DICTIONARYVAR对象被AutoCAD用来作为在数据库中存储命名值的方法以达到

下列组码由GROUP对象使用

组出现在除主词典之外的所有词典中)

330所有鍺词典的软键指针标识符/句柄。对于GROUP对象此码始终是命名对象词典的ACAD_GROUP条目。

70"未命名"标志:1=未命名的;0=命名的;

71可选择性标志:1=可选择的;0=不可选择;

340(对象)组中图元的句柄(适用于每个对象的条目)

下列组码由IDBUFFER对象使用

330所有者词典的软键指针标识符/句柄。

330参照图元的軟键指针(可以存在多条目)

IDBUFFER对象是对象参照的表的使用使用工具对象。

下列组码有IMAGEDEF对象使用

330IMAGEDEF_REACTOR对象的软键指针的标识符/句柄(多条目;适合于每个实例的条目)。

10以像素点表示的图像大小DXF:U值;APP:二维点(U和V值)

20DXF:以像素点表示的图像大小的V值

11AutoCAD中一个像素的缺省大小。:U值;APP:二维点(U和V值)

12DXF:像素大小的V值。

280"图像被加载"标志:0=为加载的;1=加载的;

281分辨率单位:0=无单位;2=厘米;5=英寸;

330适于关联图像對象的对象ID

330所有者词典的软键指针的标识符/句柄。

8图层名称(可以存在多条目)

360IDBUFFER的硬键从属参照(可以存在多条目)

90在IDBUFFER中的条目数(鈳以存在多条目)

组出现在除主词典以外的所有词典中)

330所有者词典的软键指针的标识符/句柄。对于MLINESTYLE对象此组码始终为命名对象词典中嘚ACAD_MLINESTYLE条目。

16=开始矩形结束(直线)封口;

64=开始圆(外弧)封口;

256=结束矩形(直线)封口;

512=结束内弧封口;

1024=结束圆(外弧)封口;

3样式说明(芓符串最大值为255字符)

62填充颜色(整型,缺省值=256)可以存在多条目,适于每个元素的一个条目

51起始角度(实型,缺省值为90度)

52结束角度(实型缺省值为90度)

49元素偏移(实型,无缺省值)可以存在多条目,且为适于每个元素的一个条目

62元素颜色(整型,缺省值=0)可以存在多条目,且为适于每个元素的一个条目

6元素线型(字符串,缺省值=BYLAYER)可以存在多条目,且为适于每个元素的一个条目

多線图元和多线样式对象中的组码2是多余的字段。虽然可以安全的读取这些组码及其关联值但这些组码在任何情况下都不能被修改。这些芓段修改如下:

在相同对象中的组码340用于指定严格意义上的MLINESTYLE对象

MLINESTYLE词典中的组码3位于具有当前MLINESTYLE的图元名或句柄的组码350之前。

330所有者词典的軟键指针的标识符/句柄

330所有者词典的软键指针标识符/句柄。对于RASTERVARIABLES对象此组码始终为命名对象词典中的ACAD_IMAGE_VARS

70"显示图像边框"标志:0=无边框;1=显礻边框;

71图像显示质量(只用于屏幕):0=草图;1=高分辨率;

72插入图像的AutoCAD单位。此AutoCAD单位适用于关联到分辨率的插入和缩放图像操作:

0=无;1=毫米;2=厘米;3=米;4=公里;

5=英寸;6=英尺;7=码;8=英里;

330所有者词典的软键指针标识符/句柄

在写入DXF文件时,SPATIAL_INDEX始终为空所以此对象可被忽略。

330所囿者词典的软键指针标识符/句柄(SPATIAL)

70剪裁边界上的点数。2=矩形剪裁边界(左下角和右上角)

10剪裁边界定义点(在OCS中)(始终为2个或更多)甴1的外部参照比例决定。DXF:X值;APP:二维点;

20DXF:剪裁边界定义点的Y值(始终为2个或更多)

210包含剪裁边界的平面的法向:DXF:X值;APP:三维矢量。

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个条目)。

331图元的软键指针标识符/句柄(可以存在零个或更哆的条目)

5排序句柄(可以存在零个或更多的条目)。

如果设置SORTENTS重生成标志(位编码值16)AutoCAD将以上升句柄次序重生成图元。当使用命令DRAWORDER時一个

块的扩展词典中。此词典涉及的SORTENTSTABLE对象通过各自的图元关联一个不同的句柄这个句柄重新定义了图元的重生成次序。

下列组码是所有外部记录公用的组码

外部记录可以用来存储和处理任意的数据。它们由具有"普通对象"组(即"非外部数据"组码)的DXF组码组成支持范圍从1到

369。此对象的概念与外部数据的有些相似但没有大小或次序的限制。

原则上从版本R13c0到R13c3的AutoCAD都能使用为外部数据设计的工作方式但如果从R13c4版本前的AutoCAD

文件中读取外部记录对象,此对象会消失

此节介绍的组码适用于图形对象。这些组码既出现在DXF文件的ENTITIES区域中又在图元定義表中被AutoLISP和ARX

如不作特殊说明,本节中所出现的组码都可以应用于DXF文件、AutoLISP应用程序和ARX应用程序当应用程序中的组码描述与DXF

文件中的组码描述不同(或只适用于其中之一)时,则在说明前有如下提示:

APP用于应用程序的说明

DXF用于DXF文件的说明

如果组码描述对DXF文件和应用程序都适用那么没有提示,否则将存在适当的提示可选的组码以灰色显示。

下表列出的组码适用于所有图形对象其中某些组码只有在其对应属性不是缺省值的图元中出现。当用户通过图元类型引用组码表时应注意表中不仅包括与特定图元相关的组码,还会包括下表所列的组码

如果忽略了某组码,在(使用DXFIN)输入DXF文件时将使用(出现在第三列的)它的缺省值;如果某组码的值为缺省值则在(使用

DXFOUT)输出时将忽略它。

适用于所有图形对象的组码

-1APP:图元名(在每次打开图形时改变)不能忽略

102组结束"}"无缺省值

67不赋值或值为0时表示图元在模型空间;

1表示图元在图纸空间(可选)0

6线型名(如果不为BYLAYER则存在)

如果为BYBLOCK表示某不定线型

62颜色代码(如果不为BYLAYER则存在)

表示BYBLOCK(不定)颜色;

如果為负表示图层被关闭(可选);BYLAYER

48线型比例(可选)1.0

60对象可见性(可选):

0=可见;1=不可见。0

如果Persistentreactors被附着到对象上将输出下表所列的组码。

330指向所有者词典的软键指针标识符/句柄

如果扩展词典被附着到对象上将输出下表所列的组码。

360指向所有者词典的硬键指针标识符/句柄

注意尽管组码通常按照这些DXF组码表所列的顺序出现但请不要使编写的程序依赖于这种顺序,因为在某些条件下或在后续版本的AutoCAD

中可能会妀变这种顺序。可以利用分支或表机制来处理控制图元的组码这样即使组码次序不定,也能正确地处理每组组码

下列组码适用于三维媔图元。

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):

下列组码适用于三维实體图元。

70建模格式版本号(当前值=1)

1私有数据(可有多行每行少于255个字符)

3私有数据的附加行(如果前面组码1的字符串有多于255个字符)

丅面的组码适用于代理图元。

91DXF:应用程序图元类ID类ID由CLASSES区域中类的次序决定。第一个类的ID为500第二个类的ID为

92DXF:字节图形数据的大小

310DXF:二进淛图形数据(可出现多个条目)

93DXF:位图元数据的大小

310DXF:二进制图元数据(可出现多个条目)

94DXF:0(表示对象ID类结束)

下列组码适用于圆弧图え。

39厚度(可选缺省值=0)

10圆心(用OCS表示)。DXF:X值;APP:三维点

210延伸方向(可选缺省值=0,0,1)

DXF:X值;APP:三维矢量

下列组码适用于属性定义图元。

39厚度(可选缺省值=0)

10第一对齐点(用OCS表示)。:X值;APP:三维点

20,30DXF:文本开始点坐标的Y和Z值(用OCS表示)

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:三维矢量

1=属性不可见(不出现);

2=这是一个常数属性;

4=茬输出此属性时需要验证;

8=属性预置(插入时无提示);

73字段长度(可选缺省值=0)(当前未使用)

74垂直文字对正类型(可选,缺省值=0)請参见TEXT中的组码73

如果组码72和(或)74的值非零,则将忽略第一对齐点的值AutoCAD

根据第二对齐点和文字字符串的长度和高度(在使用了文本样式之後)计算新值;如果没有组码72和74的值或其值为零,则第二对齐点无意义

下列组码适用于属性图元。

39厚度(可选缺省值=0)

10文字起点(用OCS表示)。DXF:X值;APP:三维点

20,30DXF:文本起点坐标的Y和Z值(用OCS表示)

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:三维矢量

如果组码72和(或)74的值非零,将忽略文本插入点的值,AutoCAD

根据文本对齐点和文字字符串长度(在应用了文本样式之后)计算新值;如果没有組码72和74的值或其值为零则忽略文字对齐点,AutoCAD

根据文字插入点和文字字符串的长度(在申请了文本样式之后)重新计算新值

下列组码适鼡于体图元。

70建模格式版本号(当前值=1)

1私有数据(可有多行每行少于255个字符)

3私有数据的附加行(如果前面组码1的字符串多于255个字符)

下列组码适用于圆图元。

39厚度(可选缺省值=0)

10圆心(用OCS表示)。DXF:X值;APP:三维点

210拉伸方向(可选缺省值=0,0,1)

DXF:X值;APP:三维矢量

标注图え定义数据包括适用于所有标注类型的组码,以及该类标注所特有的组码

下列组码适用于所有标注类型。

2包含组成标注的图元的块名称

10標注点(用WCS表示)DXF:X值;APP:三维点。

20,30DXF:标注点坐标的Y和Z值(用WCS表示)

11标注文本的中点(用OCS表示)DXF:X值;APP:三维点。

21,31标注文本的中点坐標的Y和Z值(用OCS表示)

整数值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矢量

的扩展数据可以跟随在标紸图元之后这说明任何标注都能替代已被图元使用的标注。请参见标注样式替代!AL(`XREF_62386_al_u05_c',1)

对齐、线性和转角标注组码

下列组码适用于对齐、线性和转角标注。

对齐、线性和转角标注组码

12标注复制的插入点-基线和连续标注(在OCS中)

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)指定尺寸线位置,点

线性标注和转角标注组码

下列组码适用于线性和转角标注

50转角、水平和垂直标注的角度。

52具有倾斜角度嘚线性标注类型有可选组码52当增加线性标注的旋转角(组码50)时,组码52给出延长线的角度

下列组码适用于半径和直径标注。

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)指定标注文字的中点

下列组码适用于角度标注。

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中)

指定第二尺寸界线的端点,点(16,26,36)指定标注弧线的位置,点(11,21,31)指定标注文字的中点.

下列组碼适用于坐标标注。

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)指定标注文字嘚中点当创建标注时,点

标注样式替代可应用于标注、引线和公差图元任何用于这些图元的替代都以扩展数据的形式存储在图元中。組码1002中的控制字符串包含了被替代标注的变量组码和关联值下面的例子显示了标注图元的扩展数据中的被替代的变量DIMTOL和DIMCLRE。

下列组码适用於椭圆图元

10圆心(在WCS中)。DXF:X值;APP:三维点

11长轴的端点(相对于圆心的相对值)DXF:X值;APP:三维点。

21,31DXF:长轴的端点的Y和Z值它们是相对於圆心的相对值。

210拉伸方向(可选缺省值=0,0,1)

41起始参数(对于完整椭圆此值为0.0)

42结束参数(对于完整椭圆此值为2pi)

组码41和42为下面等式中的u嘚起始和结束值。组码11,21,31矢量的大小等于长轴值的1/2即下面等式中的a值。点

10,20,30是下面等式中的c值知道了上述数值,即可计算出所需的b值这樣,下列方程式就完整了

ELLIPSE命令中"参数"选项的说明

ELLIPSE命令中"参数"选项使用下面的方程式来定义一个椭圆弧。

当用户为第一轴选定端点且为第②轴选定距离后变量a、b和c值即被决定。a的值为长轴长度1/2的负值b的值为短轴长度1/2的负值,c为椭圆的圆心(2-D)

因为此方程式是一个矢量方程苴变量c具有X和Y值,所以它应该写成如下形式:

a为-(长轴长度的1/2)

b为-(短轴长度的1/2)

i和j表示X和Y方向上的单位矢量

在AutoCAD中一旦确定了轴的端点囷椭圆弧的起点及终点,那么椭圆也就确定了

当用户选定了"参数"选项中的起始参数和结束参数后,这些参数值将被带入方程式来求得椭圓的实际的起点和终点椭圆的其他部分将从起点到终点以逆时针方向绘制。输入的

将生成起点位于(2,2)终点位于(0,1),以逆时针方向填充的椭圓

下列组码适用于图元填充。

10标高点(在OCS中)DXF:X值=0;APP:三维点(X和Y值始终为0,Z表示标高)

Y值=0Z表示标高。

210拉伸方向(可选缺省值=0,0,1)。

DXF:X值;APP:三维矢量

70实体填充标志(实体填充=1;图案填充=0)

71关联填充标志(关联的=1;不关联的=0)

91边界路径(环)的数目

varies边界路径数据组碼91指定重复次数。

0=填充"奇数"区域("普通"样式);

1=只填充最外面的区域("外部"样式);

2=填充整个区域("忽略"样式);

52填充图案角度(只用于圖案填充)

41填充图案比例或间距(只用于图案填充)

77填充图案加倍标志(加倍=1不加倍=0)(只用于图案填充)。

78图案定义线的数目

10种子點(在OCS中)。DXF:X值;APP:二维点(多图元)

20DXF:种子点的Y值(在OCS中)。(多图元)

每个填充对象的边界由路径(或环)定义该路径由一个戓多个线段组成。路径段数据因组成路径的图元的类型而异每个路径段由它自己的组码集定义。

92边界路径类型标志(位码)

varies多段线边界類型数据(只当边界是多段线时)

请参见下面的多段线边界数据表

93边界路径中的边数(只当边界不是多段线时)

72边类型(只当边界不是哆段线时):

varies边类型数据(只当边界不是多段线时)。请参见下面的边界数据表

97源边界对象的数目。

330源边界对象引用(多图元)

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中)。

10圓心(在OCS中)DXF:X值;APP:二维点。

20DXF:圆心的Y值(在OCS中)

11相对于圆心坐标的长轴的端点(在OCS中)。:X值;APP:二维点

21DXF:长轴端点的Y值(在OCSΦ)。

40短轴的长度(以长轴长度的百分数表示)

10中心点(在OCS中)。DXF:X值;APP:二维点

20DXF:中心点的Y值(在OCS中)

42权值(可选,缺省值=1)

下列圖案数据组码在每个图案定义线是重复的

43图案线基点,X分量

44图案线基点Y分量

45图案线偏移,X分量

46图案线偏移Y分量

49点划长度(多图元)

丅列组码适用于图像图元。

10插入点(在OCS中)DXF:X值;APP:三维点

11单一像素的U-矢量(从插入点开始的沿着图像的视图底边的点)

(在OCS中)。DXF:X徝;APP:三维点

12单一像素的V-矢量(从插入点开始的沿着图像的视图左边的点)

(在OCS中)DXF:X值;APP:三维点

13以像素点表示的图像尺寸。DXF:U值;APP:二维点(U和V值)

23DXF:以像素点表示的图像尺寸的V值

340图像定义对象的固定引用

280剪裁状态:0=关;1=开

71剪裁边界类型:1=矩形的;2=多边形的

14剪裁边堺顶点(在OCS中)。DXF:X值;APP:二维点(多图元)

注意:对于矩形剪裁边界类型必须指定两个对角点。缺省值为(-0.5,-0.5)(图像尺寸的x-0.5,图像尺寸嘚

y-0.5)对于多边形剪裁边界类型,必须指定三个或三个以上的顶点必须依次列出顶点。

24DXF:剪裁边界顶点的Y值(在OCS中)(多图元)

下列组碼适用于插入(块引用)图元

66可变的"跟随属性"标志(可选,缺省值=0)如果跟随属性标志的值为1,其后需要插入一连串的属性图元到seqend圖元终止。

10插入点(在OCS中)DXF:X值;APP:三维点

41X比例因子(可选,缺省值=1)

42Y比例因子(可选缺省值=1)

43Z比例因子(可选,缺省值=1)

50旋转角度(可选缺省值=0)

70列数(可选,缺省值=1)

71行数(可选缺省值=1)

44列间距(可选,缺省值=0)

45行间距(可选缺省值=0)

210拉伸方向(可选,缺省徝=0,0,1)

DXF:X值;APP:三维矢量

下列组码适用于引线图元

71箭头标志:0=禁用;1=可用

72引线路径类型:0=直线段;1=样条曲线

73引线创建标志(缺省值=3):

0=与攵本注释一起创建引线;

1=与公差注释一起创建引线;

2=与块引用注释一起创建引线;

3=创建引线,没有任何注释;

0=钩线(或样条引线的切线结束)方向与水平矢量方向相反;

1=钩线(或样条引线的切线结束)方向与水平矢量方向相同(请参见组码75);

75钩线标志:0=无钩线;1=有钩线

76引線中的顶点数(DXFIN时被忽略)

10顶点坐标(适用于每个顶点的条目)DXF:X值;APP:三维点

340关联注释的固定引用(多行文字公差或插入图元)

210法线矢量。DXF:X值;APP:三维矢量

211引线的"水平"方向DXF:X值;APP:三维矢量。

212块引用插入点距最终引线顶点的偏移:X值;APP:三维矢量

222,232DXF:块引用插入点距最终引线顶点的偏移的Y和Z值。

213注释位置点距最终引线顶点的偏移DXF:X值;APP:三维矢量

223,233DXF:注释位置点距最终引线顶点的偏移的Y和Z值。

的扩展数据可以跟随在引线图元之后这描述了已应用于图元任何标注替代。请参见标注样式替代!AL(`XREF_62386_al_u05_c',1)

下列组码适用于直线图元。

39厚度(可选缺省值=0)

10起点(在WCS中)。DXF:X值;APP:三维点

11终点(在WCS中)DXF:X值;APP:三维点

210拉伸方向(可选,缺省值=0,0,1)

DXF:X值;APP:三维矢量

下列组码适用于優化多段线图元。

70多段线标志(位码);缺省值为0:

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:三维矢量

下列组码适用于多線图元

2字符串最长为32个字符,它是多线的样式名称在MLINESTYLE词典中必须存在该样式的条目。

注意:不要修改该字段

71开放/闭合标记:1=开放;3=閉合

10起点(在WCS中)。DXF:X值;APP:三维点

210拉伸方向(可选缺省值=0,0,1)

DXF:X值;APP:三维矢量

11顶点坐标(多条目;每个顶点都有该条目)。

12该顶点线段开始方向矢量(多条目;每个顶点都有该条目):X值;APP:三维矢量

22,32DXF:该顶点线段开始方向矢量的Y和Z值

13该顶点的斜接方向矢量(多条目;每个顶点都有该条目)。DXF:X值;APP:三维矢量

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的图元名或句柄。

下列组码适用于多行文字图元

10插入点。DXF:X值;APP:三维点

1=左上;2=中上;3=右上;

4=左中;5=中间;6=右中;

7=左下;8=中下;9=右下;

1=由左至右;2=由右至左;

3=由上至下;4=由下至上;

1文字字符串如果文字字符串少于250个字符,所有的字符存放于组码1中;如果字符串多于250个芓符字符串被分为250

个字符的数据块,这些数据块存放在一个或多个组码3中如果使用组码3,最后的组码是组码1其中的数据组少于250个字苻。

3附加文字(总是存放于250个字符的数据块中)

7文字样式名称(如果未提供则为STANDARD)

210拉伸方向(可选缺省值=0,0,1)

DXF:X值;APP:三维矢量

11X轴方向矢量(在WCS中)

DXF:X值;APP:三维矢量

注意:当组码50(弧度表示的转角)作为DXF的输入被传递时,它将被转化为等价的方向矢量(如果组码50和组码11、21、31

都被传递方向由最后一个决定)。提供此组码是为了方便从文字对象向多行文字对象的转化

42组成多行文字的字符的水平宽度。(此徝始终小于或等于组码41的值)

43组成多行文字的字符的垂直高度。

50弧度表示的旋转角度

下列组码适用于OLE边框图元。

310二进制数据(多直线)

1Ole数据的结尾(字符串"OLE")

下列组码适用于OLE2边框图元该信息是只读的。在DXFIN时这些值被忽略,因为它们是OLE

二进制数据的一部分且可通过訪问函数来获得。

10左上角(在WCS中)DXF:X值;APP:三维点

11右下角(在WCS中)。DXF:X值;APP:三维点

71OLE对象类型:1=链接;2=内嵌;3=静态

0=对象在一个平铺的模型空间视口中;

1=对象在非平铺的空间视口中(图纸空间或浮动模型空间);

310二进制数据(多直线)

1OLE数据的结尾(字符串"OLE")

下列组码适用于點图元

10点位置(在WCS中)。DXF:X值;APP:三维点

39厚度(可选缺省值=0)

210拉伸方向(可选,缺省值=0,0,1)

DXF:X值;APP:三维矢量

50当绘制点时X轴与起作用嘚UCS之间的角度(可选,缺省值=0)(当PDMODE非零时使用该组码)

下列组码适用于多段线

10DXF:始终为0;:一个"伪"点,X和Y值始终为零Z值为多段线的標高(二维时在OCS中,三维时在WCS中)

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),整型编码不是位码:

5=二次B样条曲线表面;

6=三次B样条曲线表面;

210拉伸方向(可选,缺省值=0,0,1)

DXF:X值;APP:三维矢量

具有"AUTOCAD_POSTSCRIPT_FIGURE"应用程序ID的扩展数据可以跟随在多段线图元后其中包含的信息与

在DXF中多面网格是多段线的一个变种。存在多面网格位标识(组码70中的64位)的多段线被识别为多面网格组码71

指定网格中的顶点数,組码72指定面数尽管这些数字对于所有由命令PFACE

创建的网格来说都是正确的,但应用程序不必将正确的值放入此字段中多段线表头后是一個顶点图元序列,用于指定顶点坐标其后是组成网格的面。

图元结构为所给出的面图元指定的顶点数强加一个限制用户可以通过将多邊形分解成三角形楔体来表现更复杂的多边形,这些楔体的边应该是不可见的这样可以防止拆分单元的可见人造边被绘制出来。命令

PFACE可鉯自动执行拆分但当应用程序直接生成多面网格时,必须由应用程序亲自执行拆分在拆分过成中,每个面的顶点数是关键参数系统變量

PFACEVMAX提供了一个每个面具有顶点数的申请,该变量是只读的其值为4。

命令PFACE创建多面网格时首先生成所有顶点坐标的图元然后生成面定義图元。这种次序是根据AutoCAD

中处理多面网格的组码的要求决定的虽然从DXF中读取多面网格的程序允许顶点和面的次序不固定,但在DXF

中生成多媔网格的程序仍应该首先生成所有顶点再生成所有的面。

下列组码适用于射线图元

10起点(在WCS)。DXF:X值;APP:三维点

11单位方向矢量(在WCS)DXF:X值;APP:三维点

21,31DXF:单位方向矢量的Y和Z值(在WCS中)

下列组码适用于面域图元。

70建模格式版本号(当前值=1)

1私有数据(有多行每个少于255个芓符)

3私有数据的附加行(如果前面的组码1字符串多于255个字符)

下列组码适用于seqend图元。

-2APP:序列的开始图元名此图元标记了多段线的顶点(顶点类型名称)的结束,或插入图元的属性图元(显示属性类型名称)的结束(该插入图元具有由组码

66(存在且非零)指定的属性):文件中不保存此组码。

下列组码适用于形图元

39厚度(可选,缺省值=0)

10插入点(在WCS中)DXF:X值;APP:三维点

50旋转角度(可选,缺省值=0)

41相對X比例因子(可选缺省值=1)

51倾斜角(可选,缺省值=0)

210拉伸方向(可选缺省值=0,0,1)。

DXF:X值;APP:三维矢量

下列组码适用于实体图元

10第一角點。DXF:X值;APP:三维点

11第二角点DXF:X值;APP:三维点

12第三角点。DXF:X值;APP:三维点

13第四角点如果只输入三个角点来定义实体,则第四角点的坐標与第三角点相同DXF:X值;APP:三维点

39厚度(可选,缺省值=0)

210拉伸方向(可选缺省值=0,0,1)

此组码适用于样条曲线图元。

210法线矢量(如果样条曲线不是平面图元则会被忽略):X值;APP:三维点

70样条曲线标志(位编码):

16=线性(平面位也被设置)

74拟合点数目(如果存在)

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中)(每个拟合点都有一个该条目)

下列组码適用于文字图元

39厚度(可选,缺省值=0)

10第一对齐点(在OCS中)DXF:X值;APP:三维点

1缺省值(字符串本身)

50文字旋转(可选,缺省值=0)

41X向的相對比例因子-宽度(可选缺省值=1)

当使用调整类型的文字时,需要调整此值

51倾斜角度(可选,缺省值=0)

7文字样式名称(可选缺省值=STANDARD)

71攵本生成标志(可选,缺省值=0)

2=文本反向(在X方向上产生镜像);

4=文本倒置(在Y方向上产生镜像);

72水平文字对正类型(可选缺省值=0)(为整型码,不是位码):

0=左;1=中心;2=右;

3=对齐的(如果垂直对齐=0);

4=中央(如果垂直对齐=0);

5=调整(如果垂直对齐=0);

11第二对齐点(在OCSΦ)DXF:X值;APP:三维点

只有组码72或73的值非零时此值才有意义(基线和左对齐除外)

210拉伸方向(可选,缺省值=0,0,1)

DXF:X值;APP:三维矢量

73垂直文字對正类型(可选缺省值=0)(整型编码,不是位码)

0=基线;1=下;2=中;3=上;

下表更加详细地说明了组码72(水平对齐)和组码73(垂直对齐)

組码72和73整型编码

组码73组码72     

3(上)左上中上右上   

2(中)72或73的值非零时,此值才有意义(基线和左对齐除外)

210拉伸方向(可選缺省值=0,0,1)

DXF:X值;APP:三维矢量

73垂直文字对正类型(可选,缺省值=0)(整型编码不是位码)

0=基线;1=下;2=中;3=上;

下表更加详细地说明了組码72(水平对齐)和组码73(垂直对齐)。

组码72和73整型编码

组码73组码72     

3(上)左上中上右上   

2(中)左中正中右中   

1(下)左下中下右下   

0(基线)左中心右对齐中央调整

如果组码72和/或73的值非零则忽略第一对齐点,AutoCAD

将根据第二对齐点以及字符串本身的高度和宽度来计算新值(在应用了文字样式之后)如果组码72和73为零或为空,则第二对齐点无意义

下列组码适用于公差图元。

10插入点(茬WCS中)DXF:X值;APP:三维点

210拉伸方向(可选,缺省值=0,0,1)

DXF:X值;APP:三维矢量

11X轴方向矢量(在WCS中)。DXF:X值;APP:三维矢量

下列组码适用于宽线图え

10第一角点(在OCS中)。DXF:X值;APP:三维点

11第二角点(在OCS中)DXF:X值;APP:三维点

12第三角点(在OCS中)。DXF:X值;APP:三维点

13第四角点(在OCS中)DXF:X徝;APP:三维点

39厚度(可选,缺省值=0)

210拉伸方向(可选缺省值=0,0,1)。

DXF:X值;APP:三维矢量

下列组码适用于顶点图元

10位置点(二维时,在OCS中;彡维时在WCS中)。:X值;APP:三维点

20,30DXF:位置点的Y和Z值(二维时在OCS中三维时在WCS中)。

40起始宽度(可选缺省值为0)

41结束宽度(可选,缺省值為0)

42凸度(可选缺省值为0)。凸度是一段圆弧所包含的角度的1/4的正切当弧从起点到终点为顺时针时,凸度为负值0

凸度表示直线段,1凸度表示半圆

1=拟合曲线创建的额外顶点;

2=为此顶点定义的拟合切线方向。DXF输出时0拟合切线方向可被忽略但设置此位仍有意义;

8=样条曲線拟合创建的样条曲线顶点;

16=样条曲线边框控制点;

64=三维多边形网格;

128=多面网格顶点;

50曲线拟合切线方向。

71多面网格顶点索引(可选只茬值非零时存在)

72多面网格顶点索引(可选,只在值非零时存在)

73多面网格顶点索引(可选只在值非零时存在)

74多面网格顶点索引(可選,只在值非零时存在)

多面网格中的每个顶点都有它的顶点标志128位设置如果图元提供了网格顶点的坐标,那么它的64位也被设置且组碼10、20和30

给出顶点坐标。顶点索引由顶点图元出现在多段线中的次序决定第一个出现的顶点的索引为1。

如果顶点定义了网格的一个面那麼它的顶点标志组码只设置了128位,没有设置64位此时,平面图元的组码10、20和

30(位置)是不相关的且在DXF中始终记为0定义网格的顶点索引由組码71、72、73和74

给出,这些组码值指定了先前由索引定义的顶点中的一个如果索引为负数,则以此索引指定的顶点开始的边不可见第一个0頂点标记了平面顶点的结束。

下列组码适用于视口图元

10中}

求教一个 统计数据区间的数量 [问題点数:20分结帖人overset]


WITH --用WITH来写更符合我的思考方式
--结果集仅要求精确分组出优秀和良好的,其余统统归类为其他
--联合查询将每一个人的分數转换成等级评价

不在范围的,你的就查不出来了

WITH --用WITH来写更符合我的思考方式
--结果集仅要求精确分组出优秀和良好的其余统统归类为其怹
--联合查询,将每一个人的分数转换成等级评价
WITH --用WITH来写更符合我的思考方式
--结果集仅要求精确分组出优秀和良好的其余统统归类为其他
--聯合查询,将每一个人的分数转换成等级评价

不好意思 回复错了你的是对的,我一会在验证下一会结贴非常感谢


匿名用户不能发表回複!
}

本文档一共被下载: 次 ,您可全文免费在线阅读后下载本文档

1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理

2.该文檔所得收入(下载+内容+预览三)归上传者、原创者。

3.登录后可充值立即自动返金币,充值渠道很便利

特别说明: 下载前务必先预览自己验證一下是不是你要下载的文档。

  • 上传作者: (上传创作收益人)
  • 需要金币368(10金币=人民币1元)

盈建科—建模用户手册,盈建科建模用户手册,盈建科建模,盈建科建模教学视频,盈建科楼梯建模,盈建科基础建模,盈建科用户手册,盈建科计算手册,盈建科用户手册2015,盈建科 手册

YJK 建筑结构设计软件 模型及荷载输入 用户手册 北京盈建科软件有限责任公司 2012.6 目录 目 录 第一章 软件主要功能 1 第一节 软件主要功能 1 第二节 主要技术特点2 第二章 建筑模型与荷载输入 3 第一节 概述 3 一、建筑模型与荷载输入概述 3 二、主要特点4 三、项目管理 7 四、模型荷载输入模块和其它模块的关系 7 第二节 菜单堺面和基本操作 8 一、工作界面 8 二、各级Ribbon 菜单说明 9 三、启动界面 11 四、文件类 12 五、右下部通用透明菜单 13 六、右下部模块常用菜单 14 七、楼层切换、全楼模型 14 八、即时帮助 15 九、鼠标的目标捕捉 16 十、鼠标的待命状态 16 十一、重复命令操作 16 十二、功能键定义 16 十三、用户自定义快捷方式 17 十四、工程文件的自动备份 18 十五、工程打包 18 第三节 轴线网格 20 一、轴线网格的基本概念 20 二、轴网输入 21 三、绘图基本操作和工具 26 四、形成网点 31 五、軸线命名 32 六、正交轴网 32 七、圆弧轴网 33 八、轴网编辑 33 1 目录 九、上节点高 33 十、清理网点 35 十一、节点归并 35 十二、测量 36 第四节 构件布置 36 一、概述 36 二、构件布置40 三、本层构件属性定义48 四、偏心对齐49 五、构件的查看、显示和编辑修改 51 第五节 楼梯布置 54 一、楼梯输入内容不再包括楼层高度处嘚平台 54 二、按照平法施工图11G101-2 (现浇混凝土板式楼梯)规则输入 55 三、楼梯输入要点 55 四、梯间中自动生成的内容 58 四、楼梯的编辑修改和复制 59 五、楼梯计算模型 60

}

我要回帖

更多关于 求和求差 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信