Modify Heal Edges Feature Example (VBA)
This example shows how to modify an existing heal edges feature.
'---------------------------------------------------
'
' Preconditions: Part document is open that contains
' an
imported part with the edges of
' four
faces merged (i.e., healed).
'
' Postconditions: The HealEdge1 feature was modified
' so
that the edges of only two faces
' are
merged.
'----------------------------------------------------
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swSelMgr As SldWorks.SelectionMgr
Dim swModelDocExt As SldWorks.ModelDocExtension
Dim swHealEdgesFeature As SldWorks.HealEdgesFeatureData
Dim swFeature As SldWorks.Feature
Dim pFaceArr(1) As Object
Dim vNewFaces As Variant
Dim boolstatus As Boolean
Dim nBefore As Long, nAfter As Long
Sub main()
Set
swApp = Application.SldWorks
Set
swModel = swApp.ActiveDoc
Set
swSelMgr = swModel.SelectionManager
Set
swModelDocExt = swModel.Extension
boolstatus
= swModelDocExt.SelectByID2("HealEdge1",
"BODYFEATURE", 0, 0, 0, False, 0, Nothing, 0)
Set
swFeature = swSelMgr.GetSelectedObject6(1,
0)
swModel.ClearSelection2 True
Set
swHealEdgesFeature = swFeature.GetDefinition
swHealEdgesFeature.AccessSelections swModel, Nothing
boolstatus
= swModelDocExt.SelectByID2("",
"FACE", 0.06507691398775, -0.0366439406709, -0.06961917982773,
False, 0, Nothing, 0)
boolstatus
= swModelDocExt.SelectByID2("",
"FACE", 0.06277127684021, 0.03350349693454, -0.07956199092911,
True, 0, Nothing, 0)
Set
pFaceArr(0) = swSelMgr.GetSelectedObject6(1,
0)
Set
pFaceArr(1) = swSelMgr.GetSelectedObject6(2,
0)
swModel.ClearSelection2 True
vNewFaces
= pFaceArr
swHealEdgesFeature.Faces = (vNewFaces)
swHealEdgesFeature.HealEdges
swHealEdgesFeature.GetEdgeInformation nBefore, nAfter
swModel.ClearSelection2 True
swFeature.ModifyDefinition swHealEdgesFeature,
swModel, Nothing
End Sub