import rhinoscriptsyntax as rs rs.DeleteObjects(rs.AllObjects()) ''' #v1 def create_ellipses_and_loft(): major_radius = 8.5 minor_radius = 4.5 num_ellipses = 10 spacing = 7 plane = rs.WorldXYPlane() ellipses = [] for i in range(num_ellipses): if i % 2: ellipse = rs.AddEllipse(plane, major_radius, minor_radius) else: ellipse = rs.AddEllipse(plane, minor_radius, major_radius) rs.RotateObject(ellipse, (120, 60, 0), i * (370 / num_ellipses), (0.8, 1, 0.2)) ellipses.append(ellipse) srf = rs.AddLoftSrf(ellipses, closed=True) rs.MoveObject(srf, (0, 0, 85)) rs.DeleteObjects(ellipses) create_ellipses_and_loft() ''' #v2 number = 22 plane = rs.WorldXYPlane() abstand = 5 crvs = [] for i in range(number): if i % 2: curve = rs.AddEllipse(plane, 8, 3) else: curve = rs.AddEllipse(plane, 8, 18) rs.RotateObject(curve, (50, 0, 0), i * (360 / number), (0, 1, 0)) crvs.append(curve) srf = rs.AddLoftSrf(crvs, closed=True) rs.MoveObject(srf, (0, 0, 58)) rs.DeleteObjects(crvs) #both variants work