MoveCurveParCloserToObj

From scripting
Jump to: navigation, search
Sub MoveCurveParCloserToObj(CurvePar As HybridShapeCurvePar, CompareObj As Variant)
Dim CurOri As Boolean
CurOri = CurvePar.InvertDirection
Dim OppOri As Boolean
OppOri = Not CurOri
IsUpdatable CurvePar
IsUpdatable CompareObj
Dim CMeas
Set CMeas = TheSPAWorkbench.GetMeasurable(CurvePar)
Dim FirstDist As Double
FirstDist = CMeas.GetMinimumDistance(CompareObj)  

CurvePar.InvertDirection = OppOri
IsUpdatable CurvePar
Dim CMeas2
Set CMeas2 = TheSPAWorkbench.GetMeasurable(CurvePar)
Dim SecondDist As Double
SecondDist = CMeas.GetMinimumDistance(CompareObj) 

If SecondDist > FirstDist Then
    CurvePar.InvertDirection = CurOri
    IsUpdatable CurvePar
End If  

End Sub