Is Selected Feature a Boundary Box Sketch (VB.NET)
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.
'----------------------------------------------------------
Imports
SolidWorks.Interop.sldworks
Imports
SolidWorks.Interop.swconst
Imports System
Imports System.Diagnostics
Partial
Class SolidWorksMacro
Public
Sub Main()
Dim swModel
As ModelDoc2
Dim swModelDocExt
As ModelDocExtension
Dim swSelMgr
As SelectionMgr
Dim swFeature
As Feature
Dim swSketch
As Sketch
Dim status
As
Boolean
Dim
errors As
Integer
Dim
warnings As
Integer
' Open a sheet
metal part
swModel = swApp.OpenDoc6("C:\Program
Files\SolidWorks Corp\SolidWorks\samples\design portfolio\sheet_metal_bracket.sldprt",
swDocumentTypes_e.swDocPART, swOpenDocOptions_e.swOpenDocOptions_Silent,
"", errors, warnings)
' Select the flat-pattern feature
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)
swSelMgr = swModel.SelectionManager
swFeature = swSelMgr.GetSelectedObject6(1, -1)
swSketch = swFeature.GetSpecificFeature2
' Print to the Immediate window if the
just-selected feature is a boundary box
Debug.Print("Selected
sketch a boundary box sketch? " & swSketch.IsBoundaryBoxSketch)
End
Sub
'''
<summary>
''' The SldWorks swApp
variable is pre-assigned for you.
'''
</summary>
Public
swApp As SldWorks
End
Class