1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;
using Autodesk.AutoCAD.DatabaseServices; using Autodesk.AutoCAD.Runtime; using Autodesk.AutoCAD.EditorInput; using Autodesk.AutoCAD.ApplicationServices;
namespace AcadDemo { public class MyLayer { [CommandMethod("SetLayerCurrent")] public static void SetLayerCurrent() { Document acDoc = Application.DocumentManager.MdiActiveDocument; Database acCurDb = acDoc.Database; using (Transaction acTrans = acCurDb.TransactionManager.StartTransaction()) { LayerTable acLyrTbl; acLyrTbl = acTrans.GetObject(acCurDb.LayerTableId,OpenMode.ForRead) as LayerTable; string sLayerName = "Center"; if (acLyrTbl.Has(sLayerName) == true) { acCurDb.Clayer = acLyrTbl[sLayerName]; acTrans.Commit(); } } }
public static void SetLayerCurrent2() { Application.SetSystemVariable("CLAYER", "Center"); } } }
|