Get Sketch Slot Using Sketch Point and Segment Example (VB.NET)
This example shows you how to get a sketch slot using a sketch point
and a sketch segment.
'--------------------------------------------------------
' Preconditions: New
part document is open
'
' Postconditions:
' 1. Sketch slot is created.
' 2. Sketch point on the sketch slot is selected
' and
the sketch slot accessed using that
' sketch
point.
' 3. Sketch segment on the sketch slot is selected
' and
the sketch slot accessed using that
' sketch
segment.
'-------------------------------------------------------
Imports SolidWorks.Interop.sldworks
Imports SolidWorks.Interop.swconst
Imports System
Imports System.Diagnostics
Partial Class SolidWorksMacro
Dim
swModel As ModelDoc2
Dim
swExt As ModelDocExtension
Dim
swSelMgr As SelectionMgr
Dim
boolstatus As Boolean
Dim
swSketchManager As SketchManager
Dim
swSketchSlot As SketchSlot
Dim
swSketchPoint As SketchPoint
Dim
swSketchSegment As SketchSegment
Public
Sub main()
swModel
= swApp.ActiveDoc
swExt
= swModel.Extension
swSelMgr
= swModel.SelectionManager
swSketchManager
= swModel.SketchManager
'
Select a plane and open a sketch
boolstatus
= swExt.SelectByID2("Front
Plane", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
swModel.InsertSketch()
'
Insert a sketch of sketch slot
swSketchSlot
= swSketchManager.CreateSketchSlot(swSketchSlotCreationType_e.swSketchSlotCreationType_line,
swSketchSlotLengthType_e.swSketchSlotLengthType_CenterCenter, 0.05, -0.05,
0, 0, 0.05, 0, 0, 0, 0, 0, 1, False)
Debug.Print("Length:
" & swSketchSlot.Length)
Debug.Print("
")
swModel.InsertSketch()
'
Get a sketch point on the sketch slot
boolstatus
= swExt.SelectByID2("Point8@Sketch1",
"EXTSKETCHPOINT", 0.05, 0.025, 0, False, 0, Nothing, 0)
swSketchPoint
= swSelMgr.GetSelectedObject6(1,
-1)
'
Get sketch slot
swSketchSlot
= swSketchPoint.GetSketchSlot
Debug.Print("Length:
" & swSketchSlot.Length)
Debug.Print("
")
'
Get a sketch segment on the sketch slot
boolstatus
= swExt.SelectByID2("Line4@Sketch1",
"EXTSKETCHSEGMENT", -0.03969355327396, -0.025, 0, False, 0,
Nothing, 0)
swSketchSegment
= swSelMgr.GetSelectedObject6(1,
-1)
'
Get sketch slot
swSketchSlot
= swSketchSegment.GetSketchSlot
Debug.Print("Length:
" & swSketchSlot.Length)
Debug.Print("
")
End
Sub
'''
<summary>
'''
The SldWorks swApp variable is pre-assigned for you.
'''
</summary>
Public
swApp As SldWorks
End Class