biguelo 发表于 2022-7-6 22:02:34

Can#039;t改变理由C

你好
 
我试图使用多段线的顶点绘制多线,宏的这一部分可以正常工作,但当我试图在绘制多线之前更改多线的对正和/或比例更改系统变量时,它不起作用,我总是得到相同的对正和/或比例。
 
最奇怪的是,当我在命令行中检查系统变量时,它们具有宏设置的值,但宏绘制的多线图不采用新的对齐方式和/或比例。
 
问题是什么?使用Autocad 2009或2014。这是我的代码>
 


Public Sub poly()
   Dim pline As AcadLWPolyline
   Dim multiLine As AcadMLine
   Dim points(0 To 5) As Double
   Dim mpoints(0 ToAs Double
   Dim varData As Variant
   
   points(0) = 2: points(1) = 4
   points(2) = 4: points(3) = 2
   points(4) = 6: points(5) = 8
   
   mpoints(0) = 2: mpoints(1) = 4: mpoints(2) = 0
   mpoints(3) = 4: mpoints(4) = 2: mpoints(5) = 0
   mpoints(6) = 6: mpoints(7) = 8: mpoints( = 0
   
   ThisDrawing.SetVariable "CMLJUST", 1
   ThisDrawing.SetVariable "CMLSCALE", 3
   
   ThisDrawing.Regen acActiveViewport
   
   Set pline = ThisDrawing.ModelSpace.AddLightWeightPolyline(points)
   
   Set multiLine = ThisDrawing.ModelSpace.AddMLine(mpoints)
   multiLine.Update

   ThisDrawing.Application.ZoomAll
   
End Sub


 
谢谢

RICVBA 发表于 2022-7-6 22:54:02

尝试使用多线属性而不是系统变量
例如
    multiLine.Justification = acBottom
   multiLine.Lineweight = acLnWt005

biguelo 发表于 2022-7-6 23:13:35

谢谢,成功了。只有一个更正,要更改比例,属性是MLineScale而不是线宽。
 
当做
页: [1]
查看完整版本: Can#039;t改变理由C