Fill hole with temp body using SOLIDWORKS API
This VBA example demonstrates how to use IModeler::CreateBodyFromFaces2 API to fill the hole of the selected feature (e.g. cut-extrude) with temp geometry.
Macro stops execution and displays temp body. Continue execution to remove the temp body.
Dim swApp As SldWorks.SldWorks Sub main() Set swApp = Application.SldWorks Dim swModel As SldWorks.ModelDoc2 Set swModel = swApp.ActiveDoc If swModel Is Nothing Then Err.Raise vbError, "", "Open model" End If Dim swSelMgr As SldWorks.SelectionMgr Set swSelMgr = swModel.SelectionManager Dim swFeat As SldWorks.Feature Set swFeat = swSelMgr.GetSelectedObject6(1, -1) If swFeat Is Nothing Then Err.Raise vbError, "", "Select feature" End If Dim vFaces As Variant Dim swTempBody As SldWorks.Body2 vFaces = swFeat.GetFaces Dim swModeler As SldWorks.Modeler Set swModeler = swApp.GetModeler Set swTempBody = swModeler.CreateBodyFromFaces2(UBound(vFaces) + 1, vFaces, swCreateFacesBodyAction_e.swCreateFacesBodyActionCap, _ False, False) If swTempBody Is Nothing Then Err.Raise vbError, "", "Failed to create body" End If swTempBody.Display3 swModel, RGB(255, 255, 0), swTempBodySelectOptions_e.swTempBodySelectOptionNone Stop End Sub