Sub weaving strObj1 = Rhino.GetObject("select curve 1",4) strObj2 = Rhino.GetObject("select curve 2",4) arrPoints1 = Rhino.curvepoints(strObj1) arrPoints2 = Rhino.curvepoints(strObj2) ' number of CVs for each curve: iCnt1 = UBound(arrPoints1) iCnt2 = UBound(arrPoints2) ' find the maximum number CV: If iCnt1< iCnt2 Then iCnt = iCnt1 Else iCnt = iCnt2 End If For intI = 0 To iCnt If intI/2 = Int(intI/2) Then 'exchange 2 values of arrPoints1 and arrPoints2: arrPt = arrPoints1(intI) arrPoints1(intI) = arrPoints2(intI) arrPoints2(intI) = arrPt End If Next Rhino.addcurve arrPoints1 Rhino.addcurve arrPoints2 End Sub