This example shows how to create a Trace and change its vertex coordinates and thickness.
'-------------------------------------------------------------- ' Preconditions: ' 1. Create a VB.NET Windows console project. ' 2. Copy and paste this code into the VB.NET project. ' 3. Add a reference to ' install_dir\APISDK\tlb\DraftSight.Interop.dsAutomation.dll. ' 4. Add a reference to System.Windows.Forms. ' 5. Start DraftSight. ' 6. Press F5. ' ' Postconditions: ' 1. Connects to DraftSight. ' 2. Gets the active document. ' 3. Creates a Trace. ' 4. Sets the vertex coordinates of the Trace. ' 5. Sets the thickness of the Trace. ' 6. Gets the vertex coordinates of the Trace. ' Click OK to close each message box. ' 7. Gets the thickness of the Trace. ' Click OK to close the message box. '---------------------------------------------------------------- Imports System Imports DraftSight.Interop.dsAutomation Imports System.Runtime.InteropServices Imports System.Windows.Forms Module Module1 Sub Main() Dim dsApp As DraftSight.Interop.dsAutomation.Application 'Connects to DraftSight application dsApp = GetObject(, "DraftSight.Application") If dsApp Is Nothing Then Return End If 'Aborts any command currently running in DraftSight 'to avoid nested commands dsApp.AbortRunningCommand() 'Gets active document Dim dsDoc As Document = dsApp.GetActiveDocument() If dsDoc Is Nothing Then MessageBox.Show("There are no open documents in DraftSight.") Return End If 'Gets Sketch Manager Dim dsSketchMgr As SketchManager = dsDoc.GetModel().GetSketchManager() 'Creates array for Trace vertex coordinates Dim CoordinatesArray As Double() = {0, 0, 0, 5, 5, 0, _ -1, 10, 0, 4, 8, 0} 'Creates Trace Dim dsTrace As Trace = dsSketchMgr.InsertTrace(CoordinatesArray) 'Sets the Trace vertex coordinates dsTrace.SetVertex1Coordinate(1.2, 2.0, 0.0) dsTrace.SetVertex2Coordinate(1.1, 2.3, 0.0) dsTrace.SetVertex3Coordinate(2.2, 1.0, 0.0) dsTrace.SetVertex4Coordinate(2.2, 3.0, 0.0) 'Sets Trace thickness dsTrace.Thickness = 2.0 'Gets Trace vertex coordinates Dim X As Double, Y As Double, Z As Double dsTrace.GetVertex1Coordinate(X, Y, Z) MessageBox.Show("GetVertex1Coordinate: (" + CType(X, String) + ", " + CType(Y, String) + ", " + CType(Z, String) + ")") dsTrace.GetVertex2Coordinate(X, Y, Z) MessageBox.Show("GetVertex2Coordinate: (" + CType(X, String) + ", " + CType(Y, String) + ", " + CType(Z, String) + ")") dsTrace.GetVertex3Coordinate(X, Y, Z) MessageBox.Show("GetVertex3Coordinate: (" + CType(X, String) + ", " + CType(Y, String) + ", " + CType(Z, String) + ")") dsTrace.GetVertex3Coordinate(X, Y, Z) MessageBox.Show("GetVertex4Coordinate: (" + CType(X, String) + ", " + CType(Y, String) + ", " + CType(Z, String) + ")") 'Gets Trace thickness Dim traceThickness As Double = 0 traceThickness = dsTrace.Thickness MessageBox.Show("Thickness: " + CType(traceThickness, String)) End Sub End Module