您的位置:网站首页 > CAD新闻

cad线型定义定制方法

时间:2011-05-07 08:59:50 来源:未知

AutoCAD 线型由线型定义文件定义。线型定义文件的扩展名为 .lin。AutoCAD 线型由一系

列用空格分隔的点和划组成,并可包含嵌入的形和文字对象。缺省的线型文件是 acadiso.lin。

用户可打印此文件,以便更好地理解如何构造线型。

仅由点、划和空格组成的线型称为简单线型;不仅包含点、划和空格,还包含嵌入的形和文

字对象的线型称为复杂线型。尽管 AutoCAD 对这两种线型的处理很相似,但它们的定义有很大

区别。

创建和修改线型定义:

有两种方法可创建和修改线型定义:一种是用文本编辑器或字处理器编辑 LIN 文件,另一

种是用 -LINETYPE 命令的“创建”选项。不能在命令行中创建或修改复杂线型。

一个线型文件可包含许多线型定义。用户可将自定义线型加入 acad.lin 文件或构造自己

的线型库文件。LIN 文件可通过分号引入注释,以分号开始的行中的任何文字都将被忽略。

在 LIN 文件中,每个线型用两行来定义。第一行定义线型的名称并提供可选的说明。

*linetype-name [, description]

这一行必须以星号开始,其后紧跟线型名称。如果有说明,则必须用逗号将它与名称分开,

而且不能超过 47 个字符。说明帮助用户了解线型的外观,AutoCAD 并不使用它。

第二行是描述实际图案的代码。

alignment,patdesc-1,patdesc-2, ...

这一行以对齐方式代码(当前只允许使用 A)开始,其后是用逗号分隔的图案描述(不允

许出现空格)。

线型不能在创建时自动加载到图形中,而需要用 LINETYPE 命令的“加载”选项来加载。

简单线型:

用户也许拥有具有如下重复图案的简单线型 DD1:

划,0.5 图形单位长度

空格,0.25 图形单位长度

空格,0.25 图形单位长度

该线型定义为

*DD1,____ . ____ . ____ . ____ .

A,.5,-25,0,-25

DD1 是线型的名称,description 字段是 LAYER Ltype ? 命令序列所显示的线型说明。

在此例中,说明是点划线图案的简单表示。

说明是可选的,可以是一系列点、空格和划,也可以是如同“此线型用于隐藏线”的注释。

如果要省略说明,则不能在线型名称后面加逗号;如果要包括说明,则其长度不能超过 47 个字

符。

alignment 字段指定在直线、圆和圆弧末端的图案对齐操作。当前,AutoCAD 只支持一种

对齐操作,通过在此字段中输入 A 加以指定。使用 LINETYPE 的“创建”选项时,A 是自动

输入的;但如果用文本编辑器创建线型定义,则必须手动加入 A。AutoCAD 拒绝在 alignment

字段中接受任何其他字符。

每个 pat-n 字段指定组成线型的一个线段的长度。长度为正时,画一条实线段;长度为负

时,画一条空线段;长度为 0 时,画一个点。每个线型至多可以有 12 个线段长度定义,但这

些定义必须在一行中,并且总长度不能超过 80 个字符。

AutoCAD 通过 A 类对齐保证直线和圆弧的两端都是划。例如,假定创建一种称为 CENTRAL

的线型,显示重复的点划序列(通常用作中心线)。AutoCAD 在直线内部调整点划序列,使划和

直线的端点一致。图案匹配线条,因此至少第一划的一半可以与直线的端点重合。必要时,第一划

和最后一划可以被加长。如果直线很短,不能容纳一个点划序列,则 AutoCAD 在两个端点之间画

一条连续的直线。对于圆弧,图案也会作适当调整,使端点为划。圆没有端点,但 AutoCAD 会调#p#分页标题#e#

整点划序列以提供适当的显示效果。

A 类对齐要求第一划的长度必须不小于 0(点或实线段),第二划的长度应该小于 0(空线

段)。这种对齐至少需要两个划定义。在第一划和最后一划之间,图案从第二个划定义开始依次显

示,并且在必要时用第一个划定义重新开始图案。

复杂线型:

复杂线型说明与简单线型说明一样位于 LIN 文件中。复杂线型指定了用符号点缀的直线,该

直线可能是分段的。此线型可表示实用工具、边界、轮廓等等。与使用简单线型一样,也可指定复

杂线型绘制的端点。直线中嵌入的形和文字对象总是完整显示,从来不会被截断。

复杂线型的语法与简单线型的语法相似,都是用逗号分隔的图案说明单元清单。除简单线型的

点划说明单元之外,形和文字对象也可作为复杂线型的图案说明单元。

形和文字对象说明单元的语法如下所示:

[shapename,shxfilename] 或

[shapename,shxfilename,transform]

文字对象

["string",stylename] 或

["string",stylename,transform]

其中,transform 是可选的,可以是下列等式的任意序列(每个等式前都用逗号分隔):

R=## 相对旋转

A=## 绝对旋转

S=## 比例

X=## X 偏移

Y=## Y 偏移

在此语法中,## 表示带符号的十进制数(1、-17、0.01,等等),旋转单位为度,其他

选项的单位都是线型比例的图形单位。上述 transform 字母,使用时必须跟上等号和数值。

下面定义了名为 CON1LINE 的线型,该线型由直线段、空格和嵌入的形 CON1 的重复图

案构成。其中,形 CON1 来自文件 es.shx(注意:为使下例正确工作,必须将 es.shx 文件

放在支持路径中)。

*CON1LINE, --- [CON1] --- [CON1] --- [CON1]

A,1.0,-0.25,[CON1,es.shx],-1.0

除了方括号中的代码以外,所有内容都与简单线型的定义一致。此样例展示了最简单的复

杂线型定义,该线型包含嵌入的形。

如前所述,总共有六个字段可用于将形定义为线型的一部分。前两个是必须的,位置固定;

后四个是可选的,次序可变。下面两个样例展示了不同的形定义项。

[CAP,es.shx,S=2,R=10,X=0.5]

此代码对形文件 es.shx 中定义的形 CAP 进行变换。在变换生效之前,将该形放大两倍,

沿顺时针方向切向旋转 10 度,并沿 X 方向平移 0.5 个图形单位。

[DIP8,pc.shx,X=0.5,Y=1,R=0,S=1]

复杂线型中的型:

此代码对形文件 pc.shx 中定义的形 DIP8 进行变换。在变换生效之前,将该形沿 X 方向

平移 0.5 个图形单位,沿 Y 方向上移一个图形单位,保持与原形大小相等,并且不作旋转。

如下语法把形定义为复杂线型的一部分:

[shapename,shapefilename,scale,rotate,xoffset,yoffset]

语法中各字段的定义如下:

shapename

要嵌入的形的名称。此字段必须。如果省略,则线型定义失败。如果指定的形文件中不存

在 shapename,则继续绘制线型,但不包括嵌入的形。

shapefilename

编译后的形定义文件 (SHX) 的名称。如果省略,则线型定义失败。如果 shapefilename

未指定路径,则从库路径中搜索此文件。如果 shapefilename 包括完整的路径,但在该位置未#p#分页标题#e#

找到该文件,则截去前缀,并从库路径中搜索此文件。如果未找到,则继续绘制线型,但不包括

嵌入的形。

scale

S=value。形的比例用作比例因子,与形内部定义的比例相乘。如果形内部定义的比例是 0,则

S=value 单独用作比例。

rotate

R=value 或 A=value。R= 指定形关于所嵌入直线的相对或切向旋转;A= 指定形关于原点的绝

对旋转。所有的形都做相同的旋转,而跟其与直线的相对位置无关。value 可以包括单位:d 表

示度(如果省略,则此单位为缺省值),r 表示弧度,g 表示百分度。如果省略旋转,则形相对

旋转 0 度。

xoffset

X=value。此字段指定形相对线型定义端点的末端在 X 轴方向上所作的移动。如果 xoffset 省

略或为 0,则形不作偏移。如果要得到用形构成的连续直线,请包括此字段。此值不会被 S= 定

义的比例因子所缩放。

yoffset

Y=value。此字段指定形相对线型定义端点的末端在 Y 轴方向上所作的移动。如果 yoffset 省

略或为 0,则形不作偏移。此值不会被 S= 定义的比例因子所缩放。

复杂线型中的文字:

带文字的复杂线型主要用于将文字当作形来处理。形和文字用法的主要区别在于:在图形中,文

字与文字样式关联,而形则直接与形文件关联。与线型关联的样式必须在线型加载到图形之前即

已存在。

下例展示了包括文字样式的复杂线型定义。

*MCline, --- MC --- MC --- MC

A,1.0,-0.25,["MC",mystyle,S=1,R=0,X=0,Y=-0.25],-1.25

其中,MCline 是线型的名称,“--- MC --- MC --- MC”是 ASCII 说明。线型定义第二行的语

法如下:

["string",style,S=scale,R=rotate,X=xoffset,Y=yoffset]

语法中字段的定义如下:

string

要在复杂线型中使用的文字。

style

要嵌入的文字样式的名称。必须包括指定的文字样式。如果省略,则使用当前定义的样式。

scale

S=value。样式的比例用作比例因子,与样式的高度相乘。如果样式的高度为 0,则 S=value 单

独用作比例。

因为文字的最后高度由 S=value 和文字样式的相关高度共同决定,所以将文字样式的高度设为零,

更容易预测结果。另外,建议为复杂线型中使用的文字创建独立的文字样式,以免与图形中的其他

文字冲突。

rotate

R=value 或 A=value。R= 指定文字关于所嵌入直线的相对或切向旋转;A= 指定文字关于原点

的绝对旋转。所有的文字都做相同的旋转,而与其关于直线的相对位置无关。value 可以包括单

位:d 表示度(如果省略,则此单位为缺省值),r 表示弧度,g 表示百分度。如果省略旋转,

则文字相对旋转 0 度。

旋转在基线和额定大写高度所形成的框中居中进行。

xoffset

X=value。此字段指定文字相对线型定义端点的末端在 X 轴方向上所作的移动。如果 xoffset

省略或为 0,则文字将其左下角作为偏移进行变换。如果要得到用文字构成的连续直线,请包

括此字段。此值不会被 S= 定义的比例因子所缩放。

yoffset

Y=value。此字段指定文字相对线型定义端点的末端在 Y 轴方向上所作的移动。如果 yoffset

省略或为 0,则文字将其左下角作为偏移进行变换。此值不会被 S= 定义的比例因子所缩放。#p#分页标题#e#