在AutoCAD中自编形文件的方法 吕凤翥 教授 1993-02-12 1、形文件的描述形文件是由一个或多个形定义组成的ASCII码文件,这类文件的后缀是SHP。每个形文件是一种特殊的数据格式,用它生成形实体。形实体是一种由线段、弧和圆组成的特殊实体。每个形定义包括一个标题行和若干个描述行。标题行规定如下: *<形号>,<形定义字节数>,<形名> 其中,形号为从1到255的整数值。形定义字节数包括结束符0在内的描述形所需的数据字节数目,规定值不超过2000。形名用大写字母,是形的识别符,用小写字母的名字不被调用。 描述行规定由若干个用逗号分隔的字节组成,以0为结束符。带前导0的字节是16进制数,无前导0的为10进制数。描述行中的字节包含有编码矢量和专用码。编码矢量字节的高4位表示矢量长度,低4位表示矢量方向。矢量方向共分16个标准的方位角,每个方位角为225度,0表示与X正轴方向夹角0度,1表示与X正轴方向夹角225度,2表示夹角45度……专用码共有14个(高版本AutoCAD)。专门码的特点是字节的高4位为0。下面列举几个常用的与下面例子有关的专用码,其余的专用码的定义请见有关资料。 0表示结束符,每个形描述行结束时,用0。 1表示落笔,落笔时移动将产生可见线。 2表示抬笔,抬笔时移动将不产生可见线。 7表示绘制下一个字节给出的字形号标识的形实体。 9表示由下两个字节给出的X-Y位移,为了易读,将这两个字节用()括起。 2、形文件的编辑下面用前面讲述的形文件描述方法建立前五个罗马数字的形文件,使用任意一种编辑器建立一个名为ROMAN.SHP的文本文件。该文件内容如下: 10:*131,15,R1 11:2,8(1,21),1,040,028,8,(0,-21),020,048,2,0C0,0 12:*132,7,R2 13:7,131,2,068,7,131,0 14:*133,11,R3 15:7,131,2,068,7,131,2,068,7,131,0 16:*134,7,R4 17:7,131,2,068,7,135,0 18:*135,23,R5 19:2,8,(1,21),1,021,018,8,(3,-21),018,020,018,8,(3,21),018,020,2,8,(10,-21),0 其中,R1,R2,R3,R4和R5分别表示罗马数字I,II,III,IV,V的形名。 3、形文件的编译 编译形文件选择主菜单(MainMenu)中选择项7(CompileShape/fontdescriptionfile)。提示信息为:Enter Name of shape fileROMAN即在提示信息后键入要编译的形文件名ROMAN,不写后缀。这时,系统将ROMAN.SHP文件编译成为ROMAN.SHX文件。 4、形文件的装入 将编译后的形文件装到当前目录下。按如下方法进行。 Command:LOAD Shape file:ROMAN 为了确认该文件是否已装入系统,可用命令SHAPE列出形名的清单。如装入不成功会发出信息。5形文件的调用装入形文件后,便可以使用形文件定义的形实体了。使用方法如下所示: Command:SHAPE Shape name(or?)<default>:R1 Starting point:1,1 Height<1,0000>:01 Rotation angle<0>:0 按上述输入,将在屏幕的(1,1)处显示出罗马数字1。执行SHAPE命令,首先用形文件中的形名来回答第一个提示信息。接着,按提示要求分别给出调用形实体所放的位置、高度和旋转角度。 本文概括地讲述了形文件的创建方法和形实体的使用。按这种方法,用户可以方便地创建一些实用的形文件,供绘图时选用合适的形实体。