读取块参照中的对象是否只能用Explode方法
请教:1、图纸中定义了块A,块A中定义了多个多段线,VBA要取图纸中多个块A参数中的多段线坐标,是否只能取到一个块A的参照后,Explode再取出多个多段线对象的坐标。不Explode可以取得到不?
2、VBA中如何执行Undo。因为我目前的方法是采用了Explode,取到多段线坐标后,需要Undo回图纸的原始状态。(因为有多个块参照,所以用到了ThisDrawing.StartUndoMark和ThisDrawing.EndUndoMark)
同问,希望高手解答,谢谢! 好象对于块这个东西,高手还没有出现哦。我也是对这个块很茫然啊。正在学习这个块的操作。望高手解答,谢谢! 不需要Undo,Explode后的实体在一对象数组里,而原块还在。你再对象数组里完成操作后删除对象数组就OK 楼上正解。 不需要,看这段
For Each sub_Ent In ACADDoc.Blocks(Ent.Name)
If sub_Ent.ObjectName = "AcDbBlockReference" Then
。。。。。。可以遍历块中的子块,当然也可以访问块中的其他图形对象,只要将sub_Ent.ObjectName 的值改一下即可。 对象数组新名词需要学习下 For Each sub_Ent In ACADDoc.Blocks(Ent.Name)这个可以
页:
[1]