Get Data for Surface-flatten Feature Example (VB.NET)
This example shows how to create a surface-flatten feature and get its data.
'----------------------------------------------------------------------------
' Preconditions:
' 1. Open install_dir\samples\tutorial\api\toaster.sldprt.
' 2. Open an Immediate window.
'
' Postconditions:
' 1. Creates Surface-Flatten1 in the FeatureManager design tree.
' 2. Inspect the Immediate window.
'
' NOTE: Because this part document is used elsewhere, do not save changes
' when closing it.
'---------------------------------------------------------------------------
Imports SolidWorks.Interop.sldworks
Imports SolidWorks.Interop.swconst
Imports System.Runtime.InteropServices
Imports System
Imports System.Diagnostics
Partial Class SolidWorksMacro
Sub main()
Dim Part As ModelDoc2
Dim swFeat As Feature
Dim swSurfFlatten As SurfaceFlattenFeatureData
Dim boolstatus As Boolean
Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("", "FACE", 0.0343791439121333, 0.113529021755539, 0.0978513589013232, True, 1, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("", "VERTEX", 0.0665960136495036, 0.141573958827054, 0.1016, True, 16, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("", "EDGE", 0.054235249930457, 0.105966292673031, 0.102108078588174, True, 2, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("", "EDGE", 0.0222348071149554, 0.0620036139007993, 0.0963411782521462, True, 2, Nothing, 0)
swFeat = Part.FeatureManager.InsertFlattenSurface(5)
'boolstatus = Part.Extension.SelectByID2("Surface-Flatten1", "REFSURFACE", 0, 0, 0, False, 0, Nothing, 0)
'Set swFeat = Part.SelectionManager.GetSelectedObject6(1, -1)
swSurfFlatten = swFeat.GetDefinition
swSurfFlatten.AccessSelections(Part, Nothing)
Debug.Print("File = " & Part.GetPathName)
Debug.Print("Feature = " & swFeat.Name)
Debug.Print(" Accuracy of flattened triangle mesh = " & swSurfFlatten.AccuracyFactor)
Debug.Print("
Keep internal control curves = " & swSurfFlatten.KeepInternalControlCurves)
swSurfFlatten.ReleaseSelectionAccess()
End Sub
''' <summary>
''' The SldWorks swApp variable is pre-assigned for you.
''' </summary>
Public swApp As SldWorks
End Class