zoukankan      html  css  js  c++  java
  • 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

    作者:codee
    文章千古事,得失寸心知。


  • 相关阅读:
    String.equals()方法、整理String类的Length()、charAt()、 getChars()、replace()、 toUpperCase()、 toLowerCase()、trim()、toCharArray()
    课后作业
    课后02
    课程作业02
    JAVA验证
    此程序从命令行接收多个数字,求和之后输出结果
    <<大道至简>>伪代码
    《大道至简》读后感
    springcloud和springboot是什么关系?
    python 自定义模块的发布和安装
  • 原文地址:https://www.cnblogs.com/bimgoo/p/2503147.html
Copyright © 2011-2022 走看看