Inizio Pipe differente da versioni precedenti

Ciao Thomas, sempre se ho capito quello che ti serve, prova questo script Python:

# -*- coding: utf-8 -*-
import rhinoscriptsyntax as rs

def flip_curve_if_needed(curve_id, click_point):
    param = rs.CurveClosestPoint(curve_id, click_point)
    point_on_curve = rs.EvaluateCurve(curve_id, param)

    start_point = rs.CurveStartPoint(curve_id)
    end_point = rs.CurveEndPoint(curve_id)


    dist_to_start = rs.Distance(point_on_curve, start_point)
    dist_to_end = rs.Distance(point_on_curve, end_point)


    if dist_to_end < dist_to_start:
        rs.ReverseCurve(curve_id)


def main():
    while True:
        curve_id = rs.GetObject("Seleziona una curva", rs.filter.curve)
        if not curve_id:
            return

        if not rs.IsCurve(curve_id):
            print("L'oggetto selezionato non è una curva.")
            continue
        click_point = rs.GetCursorPos()[0]
        flip_curve_if_needed(curve_id, click_point)

        rs.UnselectAllObjects() 
        rs.SelectObject(curve_id) 
        rs.Command("_Pipe") 

        break  

if __name__ == "__main__":
    main()
2 Mi Piace