This example shows how to load and activate LineStyles.
//-------------------------------------------------------------- // Preconditions: // 1. Create a C# Windows console project. // 2. Copy and paste this example into the C# IDE. // 3. Add a reference to: // install_dir\APISDK\tlb\DraftSight.Interop.dsAutomation.dll. // 4. Add references to System and System.Windows.Forms. // 5. Start DraftSight and open a document. // 6. Start debugging the project. // // Postconditions: // 1. Gets the active document. // 2. Gets the LineStyle Manager. // 3. Loads the BATTING and ZIGAG LineStyles. // 4. Activates and draws a Line for each LineStyle // loaded in Step 3. //---------------------------------------------------------------- using DraftSight.Interop.dsAutomation; using System.Runtime.InteropServices; using System.Windows.Forms; using System; static class Program { public static void Main(string[] args) { DraftSight.Interop.dsAutomation.Application dsApp; //Connect to DraftSight application dsApp = (DraftSight.Interop.dsAutomation.Application)Marshal.GetActiveObject("DraftSight.Application"); // Abort any command currently running in DraftSight to avoid nested commands dsApp.AbortRunningCommand(); if (null == dsApp) { return; } //Get active document Document dsDoc = dsApp.GetActiveDocument(); if (null == dsDoc) { MessageBox.Show("There are no open documents in DraftSight."); return; } //Get LineStyle manager LineStyleManager dsLineStyleMgr = dsDoc.GetLineStyleManager(); //Load LineStyles string lineStyleFilePath = System.IO.Path.Combine( dsApp.GetSystemFiles().GetUserDataPath(), "Linestyles"); string lineStyleFile = System.IO.Path.Combine(lineStyleFilePath, "MM.LIN"); LineStyle dsLineStyle = null; dsLineStyleMgr.LoadLineStyle("BATTING", lineStyleFile, out dsLineStyle); dsLineStyleMgr.LoadLineStyle("ZIGZAG", lineStyleFile, out dsLineStyle); //Get Sketch manager SketchManager dsSketchMgr = dsDoc.GetModel().GetSketchManager(); //Activate BATTING LineStyle and insert Line dsLineStyle = dsLineStyleMgr.GetLineStyle("BATTING"); dsLineStyle.Activate(); dsSketchMgr.InsertLine(0, 0, 0, 100, 100, 0); //Activate ZIGZAG LineStyle and insert Line dsLineStyle = dsLineStyleMgr.GetLineStyle("ZIGZAG"); dsLineStyle.Activate(); dsSketchMgr.InsertLine(100, 0, 0, 200, 100, 0); } }