Imports XCCLibrary Imports SolidWorks.Interop.sldworks Imports SolidWorks.Interop.swconst Imports System.Runtime.InteropServices Imports System Imports SldWorks Public Class Program Public Shared Sub Export_SW(pointTable As DataTable) Dim swApp As SldWorks.SldWorks swApp = CType(System.Runtime.InteropServices.Marshal.GetActiveObject("SldWorks.Application"), SldWorks.SldWorks) Dim Model As ModelDoc2 Dim Part As PartDoc Dim RootPoint(2) As Double Dim Normal(2) As Double 'Dim TempBody As Body2 'Dim isGood As Boolean swApp.UserControl = True 'Create a new blank document Model = swApp.NewDocument("C:\ProgramData\SOLIDWORKS\SOLIDWORKS 2020\templates\part.prtdot", 0, 0, 0) Part = Model Dim swSkMgr As SketchManager Dim longstatus As Integer Dim boolstatus As Boolean swSkMgr = Model.SketchManager swSkMgr.InsertSketch(True) boolstatus = Model.Extension.SelectByID2("Front Plane", "PLANE", 0, 0, 0, False, 0, Nothing, 0) Model.ClearSelection2(True) For Each DR As DataRow In pointTable.Rows Dim skPoint As SketchPoint Dim pX = DR("X") Dim pY = DR("Y") skPoint = swSkMgr.CreatePoint(pX, pY, 0) Next For Each DR1 As DataRow In pointTable.Rows Dim skLine As SketchLine Dim rowIndex = pointTable.Rows.IndexOf(DR1) Dim DR2 As DataRow Try DR2 = pointTable.Rows(rowIndex + 1) Catch ex As Exception DR2 = pointTable.Rows(0) End Try Dim pX1 = DR1("X") Dim pY1 = DR1("Y") Dim pX2 = DR2("X") Dim pY2 = DR2("Y") skLine = swSkMgr.CreateLine(pX1, pY1, 0, pX2, pY2, 0) Next 'Rename sketch? swSkMgr.InsertSketch(True) Dim status As Boolean Dim swModelDocExtension As ModelDocExtension swModelDocExtension = Model.Extension status = swModelDocExtension.SelectByID2("Sketch1", "SKETCH", 0, 0, 0, False, 0, Nothing, 0) Dim swFeatureMgr As FeatureManager swFeatureMgr = Model.FeatureManager Dim swFeature As Feature swFeature = swFeatureMgr.FeatureExtrusion3(True, False, False, 0, 0, 0.001, 0, False, False, False, False, 0, 0, False, False, False, False, True, True, True, 0, 0, False) Dim randInt As Integer randInt = CInt(Math.Ceiling(Rnd() * 1000)) + 1 'For debug only Dim iPart As PartDoc iPart = swApp.ActiveDoc Dim newName As String newName = "C:\Users\Anton\Documents\Exjobb\Temp" & "\TESTPART" & randInt & ".SLDPRT" longstatus = Part.SaveAs3(newName, 0, 0) End Sub End Class