指定线型比例
From AutoCAD ActiveX/VBA
用户可以指定创建对象的线型比例。比例越小,每个绘图单位中画出的重复图案就越多。默认情况下,AutoCAD 使用 1.0 的全局线型比例,即一个图形单位。用户可以更改所有图形对象、属性参考和编组的线型比例。
CELTSCALE 系统变量设置新创建对象的线型比例。LTSCALE 则全局更改现有对象以及新对象的线型比例。要使用 AutoCAD ActiveX Automation 来修改系统变量值,请使用 SetVariable 方法。
有关线型比例的详细信息,请参见《用户手册》中的“控制线型比例”。
Sub Ch4_ChangeLinetypeScale()
' 保存当前的线型Set currLineType = ThisDrawing.ActiveLinetype' 将活动线型更改为 Border,使比例的更改' 可见。' 首先查看 Border 线型是否已加载On Error Resume Next ' 打开错误捕获ThisDrawing.ActiveLinetype = ThisDrawing.Linetypes.Item("BORDER")If Err.Number = -2145386476 Then' 错误指出尚未加载线型,因此加载它。ThisDrawing.Linetypes.Load "BORDER", "acad.lin"ThisDrawing.ActiveLinetype = _ThisDrawing.Linetypes.Item("BORDER")End IfOn Error GoTo 0 ' 关闭错误捕获' 在模型空间中创建 Circle 对象Dim center(0 To 2) As DoubleDim radius As DoubleDim circleObj As AcadCirclecenter(0) = 2center(1) = 2center(2) = 0radius = 4Set circleObj = ThisDrawing.ModelSpace.AddCircle(center, radius)circleObj.UpdateMsgBox ("Here is the circle with the original linetype")' 将圆的线型比例设为 3circleObj.LinetypeScale = 3#circleObj.UpdateMsgBox ("Here is the circle with the new linetype")' 恢复原始活动线型ThisDrawing.ActiveLinetype = currLineTypeEnd Sub