我是否理解你的意思
- Dim o As AcadObject
- (...)
- Set o = varEx(i)
- Set pl = o
同样的错误。
试一试会有帮助吗。net还是使用相同的库?
谢谢你的帮助。
编辑:
python做到了这一点。
这里有一个例子。dwg只包含由3个顶点多段线组成的bref。
不适用于较旧的acad版本,此处在acad 11上测试。
- >>> import win32com.client
- >>> acad = win32com.client.Dispatch("AutoCAD.Application")
- >>> doc = acad.ActiveDocument
- >>> ms = doc.ModelSpace
- >>>
- >>> for item in ms:
- ... print item.ObjectName
- ...
- AcDbBlockReference
- >>> bref = ms[0]
- >>> exp = bref.Explode()
- >>> exp
- (<COMObject Explode>,)
- >>> e=exp[0]
- >>> e.ObjectName
- u'AcDbPolyline'
- >>> e.Coordinates
- (1000.0, 500.0, 1000.0, 600.0, 1100.0, 600.0, 1100.0, 500.0, 1000.0, 500.0)
|