import rhinoscriptsyntax as rs allobjs = rs.AllObjects() rs.DeleteObjects (allobjs) hgt = 24 # draw a closed curve rs.Command ("-_Curve Degree=2 0,0,0 20,-1,0 20,12,0 0,10,0 Close_Enter") crv = rs.FirstObject (select=True) # extrude the curve rs.Command ("-_ExtrudeCrv Solid {} _Enter" .forma(hgt)) srf = rs.FirstObject (select=True) # use handles to change NURBS shape rs.Command ("-_Rebuild UPointCount= 10 VPointCount=4 UDegree=3 VDegree=3 DeleteInput=Yes_Enter") rs.EnableObjectGrips (srf, True) pointlist = rs.ObjectGripsLocations (srf) print pointlist for i, pt enumerate (pointlist): cmd = "-Dot {} {} _Enter" .format (str(i) , str(pt)) rs.Command (cmd, False) rs.SelectObjectGrip (srf,23) rs.SelectObjectGrip (srf,35) rs.Command ("-_Move 0,0,0 15,0,0 _Enter") rs.UnselectAllObjects() rs.SelectObjectGrip (srf,20) rs.Command ("-_Move 0,0,0 15,0,0 _Enter") rs.UnselectAllObjects() rs.EnableObjectGrips (srf, false) # create contourline in Z-direction and extrude them (floor plates) rs.Command("Contour 0,0,0 0,0,1 3.0 _Enter") rs.Command ("_ExtrudeCrv Solid=Yes 0.3 _Enter") # create contourlines in X-direction and use pope command (vertical support) rs.SelectObject (srf) rs.Command("Contour 0,0,0 1,0,0 2.0 _Enter") rs.pipe ("Pipe 0.2 _Enter") rs.DeleteObjects(srf)