Option Explicit 'Script written by Lucio Zadra 'Script copyrighted by Zadra Giuseppe Stampaggio Metalli 'Script version sabato 27 giugno 2015 13:12:36 Call Main() Sub Main() Dim ObjArray, PtRef, NumItems, strObject, CrvVals, arrPoint, dblParam, arrData, PtTargetArray(), PT1, PT2, i, PtArray ObjArray = Rhino.GetObjects("Select objects to array") PtRef = Rhino.GetPoints(,, "Select first ref point", "Select second ref point", 2) strObject = Rhino.GetObject("Select a curve") NumItems = Rhino.GetReal("Number of items", 3, 2) If Rhino.IsCurve(strObject) Then CrvVals = Rhino.DivideCurve(strObject, NumItems,, VbFalse) If IsArray(CrvVals) Then i = 0 For Each dblParam In CrvVals If IsNumeric(dblParam) Then arrData = Rhino.CurveCurvature(strObject, dblParam) If IsArray(arrData) Then PT1 = arrData(0) PT2 = Rhino.PointAdd(arrData(0), arrData(1)) PT2(2) = PT1(2) PtArray = Array(PT1, PT2) ReDim Preserve PtTargetArray(i) PtTargetArray(i) = PtArray i = i + 1 End If End If Next If IsArray(PtTargetArray)Then For Each PtArray In PtTargetArray Rhino.OrientObjects ObjArray, PtRef, PtArray, 1 Next End If End If End If End Sub