'------------------------------------------------
'
' Preconditions:
' (1) Part, or assembly is open.
' (2) Reference point defined by distance feature is selected.
'
' Postconditions:
' swModel.GetPathName.txt is created with xyz locations of point.
' Reference point likely moved.
'-----------------------------------------------
Option Explicit
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swSelMgr As SldWorks.SelectionMgr
Dim swFeat As SldWorks.Feature
Dim swRefPt As SldWorks.RefPoint
Dim swRefPtData As SldWorks.RefPointFeatureData
Dim swMathPt As SldWorks.MathPoint
Dim i As Integer
Dim fileSystem As Variant
Dim textFile As Variant
Dim nPoints As Integer
Dim stepSize As Double
nPoints = 10
stepSize = 0.0254
Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc
Set swSelMgr = swModel.SelectionManager
Set swFeat = swSelMgr.GetSelectedObject5(1)
Set swRefPt = swFeat.GetSpecificFeature2
Set swRefPtData = swFeat.GetDefinition
Set swMathPt = swRefPt.GetRefPoint
Set fileSystem = CreateObject("Scripting.FileSystemObject")
Set textFile = fileSystem.CreateTextFile(swModel.GetPathName & ".txt", True)
For i = 0 To nPoints - 1
swRefPtData.Distance = stepSize * i
swRefPt.ModifyDefinition swRefPtData, swModel, Nothing
Set swMathPt = swRefPt.GetRefPoint
textFile.writeline Format(swMathPt.ArrayData(0)) & "," & _
Format(swMathPt.ArrayData(1)) & "," & _
Format(swMathPt.ArrayData(2))
Next
textFile.Close
End Sub
'-----------------------------------------------------