明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1543|回复: 2

VBA中,如何炸开Mline

[复制链接]
发表于 2003-10-31 11:22:00 | 显示全部楼层 |阅读模式
如何炸开Mlind 为 line
object.Explode  不支持呀
发表于 2003-11-1 10:05:00 | 显示全部楼层
确实如此,希望以的版本能提供这样的方法;
  1. Sub ExampleExplodeMline()
  2.     Dim ssetObj As AcadSelectionSet
  3.     Dim i As Integer
  4.     Dim explodedObjects As Variant
  5.    
  6.     Dim OldCount As Long, NewCount As Long
  7.    
  8.     Set ssetObj = ThisDrawing.PickfirstSelectionSet
  9.     ssetObj.Clear
  10.     ssetObj.SelectOnScreen
  11.     If ssetObj.Count <= 0 Then Exit Sub
  12.     On Error Resume Next
  13.     explodedObjects = ssetObj(0).Explode
  14.     If Err Then
  15.         Err.Clear
  16.         OldCount = ThisDrawing.ModelSpace.Count
  17.         Debug.Print "炸开前的实体:"
  18.         For i = 0 To ThisDrawing.ModelSpace.Count
  19.             Debug.Print i & ":" & ThisDrawing.ModelSpace(i).ObjectName
  20.         Next i
  21.         ThisDrawing.SendCommand "_explode (handent " & Chr(34) & ssetObj(0).Handle & Chr(34) & ") " & vbCr
  22.         If OldCount <> ThisDrawing.ModelSpace.Count Then
  23.             Debug.Print "被炸开形成的实体:"
  24.             For i = OldCount - 1 To ThisDrawing.ModelSpace.Count
  25.                 Debug.Print i & ":" & ThisDrawing.ModelSpace(i).ObjectName
  26.             Next i
  27.         End If
  28.         Debug.Print "炸开后的实体:"
  29.         For i = 0 To ThisDrawing.ModelSpace.Count
  30.             Debug.Print i & ":" & ThisDrawing.ModelSpace(i).ObjectName
  31.         Next i
  32.         Exit Sub
  33.     End If
  34.     On Error GoTo 0
  35.     ' Loop through the exploded objects
  36.    
  37.     For i = 0 To UBound(explodedObjects)
  38.         explodedObjects(i).Update
  39.         MsgBox "Exploded Object " & i & ": " & explodedObjects(i).ObjectName, , "Explode Example"
  40.         explodedObjects(i).color = acByLayer
  41.         explodedObjects(i).Update
  42.     Next
  43.    
  44. End Sub
发表于 2003-11-1 07:25:00 | 显示全部楼层
ActiveX(VBA)对多线的支持太少了,只能通过SendCommand方法来打散。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 12:54 , Processed in 0.178497 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表