VB编程操作AutoCAD线宽

Lineweight属性控制图形在屏幕上可以显示不同的宽度,线宽的使用包括设置线宽和显示线宽,线宽的设置与显示可以使用户在绘图中减少差错。

  • 设置线宽

Lineweight属性设置线宽,语法格式:object.Lineweight。

Lineweight属性值不能任意设置,而是由内置常数决定,编程输入时将自动显示出来供选择,线宽默认单位为毫米,Lineweight属性默认值为25,即0.25毫米,可以通过设置系统变量LWDEFAULT来改变该值,系统变量LWUNIT可以改变线宽的单位,LWUNIT=0,线宽单位为英寸:LWUNIT=1,线宽单位为毫米。

设置对象线宽的语句格式如下。

Set circleObj=AcadApp.ActiveDocument.ModelSpace.AddCircle(centerpoint,radius)

通过设置图层的线宽,可以使该图层上的物体均使用同一线宽绘制。

  • 显示线宽

在模型空间中是否显示线宽,可由Preferences对象的LineWeightDisplay属性控制,该属性为布尔型,属性值为True时显示线宽,为False时不显示线宽,也可通过系统变量LWDISPLAY来控制是否显示线宽,LWDISPLAY=0,不显示线宽,线宽为一个像素,LWDISPLAY=1显示线宽。下面的代码绘制两个圆并显示线宽。

Private Sub Command1_Click()
    Dim testlayer As AcadLayer
    Set testlayer = acadapp.ActiveDocument.Layers.Add("TEST")
    acadapp.ActiveDocument.ActiveLayer = testlayer
    testlayer.Lineweight = acLnWt200
    acadapp.ActiveDocument.Preferences.LineWeightDisplay = True
    Dim circleobj1 As AcadCircle
    Dim circleobj2 As AcadCircle
    Dim centerpoint(0 To 2) As Double
    Dim radius As Double
    centerpoint(0) = 0#: centerpoint(1) = 0#: centerpoint(2) = 0
    radius = 5#
    Set circleobj1 = acadapp.ActiveDocument.ModelSpace.AddCircle(centerpoint, radius)
    Set circleojb2 = acadapp.ActiveDocument.ModelSpace.AddCircle(centerpoint, radius / 2)
    circleobj1.Lineweight = acLnWtByLayer
    circleobj2.Lineweight = acLnWt100
   
    acadapp.ActiveDocument.Regen acActiveViewport
    ZoomExtents
End Sub

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值