我想枚举Autocad绘图中的所有实体,但不使用Autocad.Interop
参考。
使用Interop我可以选择:
IAcadApplication App = (IAcadApplication)Application.AcadApplication;
IAcadDocument Doc = App.ActiveDocument;
foreach (IAcadEntity Ent in Doc.ModelSpace) // or paperspace, or any IAcadBlock
但是使用Object Arx
引用,我只能找到教程来获取使用数据库中的事务的实体,通过ID获取对象。我认为放慢工作是非常无聊的事情。
答案 0 :(得分:2)
这就是我们这样做的方式。你有Interop代码,或者某种objectid迭代方式。
以下是Dev Network的一篇好文章:http://adndevblog.typepad.com/autocad/2012/05/whats-the-best-way-to-iterate-through-an-entire-database.html
如果您打算使用C#,我建议只是咬紧牙关,继续使用交易等等,实际上没有办法解决它。