我认为这样做很简单,但我不知道如何开始?我想使用 c# 在 AutoCAD 文件中获取图层名称或标签名称。我搜索论坛,但我真的发现任何有价值的东西。我找到了 ObjectARX 和 AutoLisp,但我没有找到任何关于这些 API 的教程。所以,我想举一个关于到达 autocad 文件的简单例子。
问问题
2120 次
2 回答
1
简单如下:
[CommandMethod("LayerIterator")]
public static void LayerIterator_Method()
{
Database database = HostApplicationServices.WorkingDatabase;
using (Transaction transaction = database.TransactionManager.StartTransaction())
{
SymbolTable symTable = (SymbolTable)transaction.GetObject(database.LayerTableId, OpenMode.ForRead);
foreach (ObjectId id in symTable)
{
LayerTableRecord symbol = (LayerTableRecord)transaction.GetObject(id, OpenMode.ForRead);
//TODO: Access to the symbol
MgdAcApplication.DocumentManager.MdiActiveDocument.Editor.WriteMessage(string.Format("\nName: {0}", symbol.Name));
}
transaction.Commit();
}
}
详细信息可以从http://spiderinnet1.typepad.com/blog/2012/06/autocad-net-iterate-through-layer-table.html找到
于 2012-06-19T00:38:37.633 回答