1. 程式人生 > 其它 >【AutoCAD .NET】設定系統變數

【AutoCAD .NET】設定系統變數

有哪些系統變數

AutoCAD系統變數詳解

比如設定pickfirst

        /// <summary>
        /// 為了支援CommandFlags.UsePickSet和ed.SelectImplied()。
        /// https://help.autodesk.com/view/ACD/2017/ENU/?guid=GUID-D4987D00-1164-4217-A82E-B8B49FFB7A29
        /// </summary>
        public static void SetPickFirst(Document doc)
        {
            object v = Application.GetSystemVariable("pickfirst");
            if (v.ToString() != "1")
            {
                doc.SendStringToExecute("pickfirst 1\n", false, true, true);
            }
        }

比如設定新物件的預設顏色

 	public static void SetDefaultColor(Document doc, int colorIndex = 256)
        {
            object v = Application.GetSystemVariable("CECOLOR");
            if (colorIndex == 256)
            {
                if (v.ToString() != "BYLAYER")
                {
                    doc.SendStringToExecute("CECOLOR BYLAYER\n", false, true, true);
                }
            }
            else
            {
                doc.SendStringToExecute($"CECOLOR {colorIndex}\n", false, true, true);
            }
        }

其中256和BYLAYER是相同效果的,會自動將256轉化為BYLAYER。