Is Selected Feature a Boundary Box Sketch (VBA)
This example shows how to determine if a sketch is a boundary box sketch.
'----------------------------------------------------------
' Preconditions:
' 1. Specified model exists.
' 2. Open the Immediate window.
' 3. Run the macro.
'
' Postconditions:
' 1. Specified model is opened.
' 2. Flat-Pattern1 feature is unsuppressed.
' 3. Flat-Pattern1's boundary box sketch feature is selected.
' 4. Whether the selected sketch is a boundary box sketch is
' written to the Immediate window.
'
' NOTES: Do not save any changes made to the model when closing
' the model.
'----------------------------------------------------------
Option Explicit
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swModelDocExt As SldWorks.ModelDocExtension
Dim swSelMgr As SldWorks.SelectionMgr
Dim swFeature As SldWorks.Feature
Dim swSketch As SldWorks.Sketch
Dim status As Boolean
Dim errors As Long
Dim warnings As Long
Sub main()
Set swApp = Application.SldWorks
' Open a sheet metal part
Set swModel = swApp.OpenDoc6("C:\Program Files\SolidWorks Corp\SolidWorks\samples\design portfolio\sheet_metal_bracket.sldprt", swDocPART, swOpenDocOptions_Silent, "", errors, warnings)
' Select the flat-pattern feature
Set swModelDocExt = swModel.Extension
status = swModelDocExt.SelectByID2("Flat-Pattern1", "BODYFEATURE", 0, 0, 0, False, 0, Nothing, 0)
' Unsuppress the flat-pattern feature
status = swModel.EditUnsuppress2
swModel.ClearSelection2 True
' Select the flat-pattern features's boundary box feature
status = swModelDocExt.SelectByID2("Bounding-Box1", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
Set swSelMgr = swModel.SelectionManager
Set swFeature = swSelMgr.GetSelectedObject6(1, -1)
Set swSketch = swFeature.GetSpecificFeature2
' Print to the Immediate window if the just-selected feature is a boundary box
Debug.Print "Selected feature a boundary box sketch? " & swSketch.IsBoundaryBoxSketch
End Sub