//根据名称获取图层ObjectId,若不存在就创建该图层
public static ObjectId GetLayerObjectId(this Database db, string layerName)
{
LayerTable lt = (LayerTable)db.LayerTableId.GetObject(OpenMode.ForRead);
if (!lt.Has(layerName))
{
LayerTableRecord ltr = new LayerTableRecord();
ltr.Name = layerName;
lt.UpgradeOpen();
lt.Add(ltr);
db.TransactionManager.AddNewlyCreatedDBObject(ltr, true);
lt.DowngradeOpen();
}
return lt[layerName];
}
[CommandMethod("PostInActiveLayer")]
public void PostInActiveLayer()
{
Database db = HostApplicationServices.WorkingDatabase;
Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;
try