块打散后的图元如何取得?
<P>可不可以打散一个块后将其中的图元添加到一个选择集中/</P><P>用vba如何能实现呢?</P> <STRONG>块打散后本身就在数组中</STRONG> <PRE class=prog_in_0>Sub Ch4_ExplodePolyline()
</PRE><PRE class=prog_in_0> Dim plineObj As AcadLWPolyline
</PRE><PRE class=prog_in_0> Dim points(0 To 11) As Double
</PRE><PRE class=prog_in_0>
</PRE><PRE class=prog_in_0> ' 定义二维多段线的点
</PRE><PRE class=prog_in_0> points(0) = 1:points(1) = 1
</PRE><PRE class=prog_in_0> points(2) = 1:points(3) = 2
</PRE><PRE class=prog_in_0> points(4) = 2:points(5) = 2
</PRE><PRE class=prog_in_0> points(6) = 3:points(7) = 2
</PRE><PRE class=prog_in_0> points(8) = 4:points(9) = 4
</PRE><PRE class=prog_in_0> points(10) = 4:points(11) = 1
</PRE><PRE class=prog_in_0>
</PRE><PRE class=prog_in_0> ' 创建优化多段线对象
</PRE><PRE class=prog_in_0> Set plineObj = ThisDrawing.ModelSpace. _
</PRE><PRE class=prog_in_0> AddLightWeightPolyline(points)
</PRE><PRE class=prog_in_0>
</PRE><PRE class=prog_in_0> ' 在某个线段上设置凸度以改变
</PRE><PRE class=prog_in_0> ' 多段线中的对象类型
</PRE><PRE class=prog_in_0> plineObj.SetBulge 3, -0.5
</PRE><PRE class=prog_in_0> plineObj.Update
</PRE><PRE class=prog_in_0>
</PRE><PRE class=prog_in_0> ' 分解多段线
</PRE><PRE class=prog_in_0> Dim explodedObjects As Variant
</PRE><PRE class=prog_in_0> explodedObjects = plineObj.<FONT style="BACKGROUND-COLOR: #316ac5" color=#ffffff>Explode</FONT>
</PRE><PRE class=prog_in_0>
</PRE><PRE class=prog_in_0> ' 遍历分解的对象
</PRE><PRE class=prog_in_0> ' 并以消息框来显示
</PRE><PRE class=prog_in_0> ' 每个对象的类型
</PRE><PRE class=prog_in_0> Dim I As Integer
</PRE><PRE class=prog_in_0> For I = 0 To UBound(explodedObjects)
</PRE><PRE class=prog_in_0> explodedObjects(I).Update
</PRE><PRE class=prog_in_0> MsgBox "<FONT style="BACKGROUND-COLOR: #316ac5" color=#ffffff>Exploded</FONT> Object " & I & ": " & _
</PRE><PRE class=prog_in_0> explodedObjects(I).ObjectName
</PRE><PRE class=prog_in_0> explodedObjects(I).Update
</PRE><PRE class=prog_in_0> Next
</PRE><PRE class=prog_in_end_0>End Sub
vba帮助里面的东东</PRE><PRE class=prog_in_end_0>如果块很多</PRE><PRE class=prog_in_end_0>就用数组来存储explodedObjects</PRE>
页:
[1]