import rhinoscriptsyntax as rs allobjs = rs.AllObjects() rs.DeleteObjects(allobjs) hgt=24 #draw a closed curve in Rhino #rs.Command("-_Curve Degree=2 0,0,0 20,-1,0 20,12,0 0,10,0 Close _Enter") #crv = rs.FirstObject(select=True) mytext = rs.AddText("L",(0,0,0),height=20, font="Arial") crv = rs.ExplodeText(mytext,True)[0] rs.SelectObject(crv) #extrude the curve rs.Command("-_ExtrudeCrv Solid=No {} _Enter".format(hgt)) srf = rs.FirstObject(select=True) #use handles to change NURBS shape rs.DeleteObject(crv) rs.Command("-_Rebuild UPointCount=10 VPointCount=4 UDegree=3 VDegree=3 DeleteInput=Yes _Enter") rs.EnableObjectGrips(srf, True) """ pointlist = rs.ObjectGripLocations(srf) print pointlist for i, pt in 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 0,10,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 contourlines in Z-direction and extrude them (floor plates) rs.SelectObject(srf) 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 the pipe command (vertical support) rs.SelectObject(srf) rs.Command("Contour 0,0,0 1,0,0 2.0 _Enter") rs.Command("Pipe 0.2 _Enter") rs.DeleteObject(srf) mytext = rs.AddText("P",(30,0,0),height=20, font="Arial") crv = rs.ExplodeText(mytext,True)[0] rs.SelectObject(crv) #extrude the curve rs.Command("-_ExtrudeCrv Solid=No {} _Enter".format(hgt)) rs.UnselectAllObjects() #use handles to change NURBS shape rs.DeleteObject(crv) srf = rs.FirstObject (select=True) rs.Command("-_Rebuild UPointCount=10 VPointCount=4 UDegree=3 VDegree=3 DeleteInput=Yes _Enter") rs.EnableObjectGrips(srf, True) """ pointlist = rs.ObjectGripLocations(srf) print pointlist for i, pt in enumerate(pointlist): cmd = "-Dot {} {} _Enter".format(str(i),str(pt)) rs.Command(cmd,False) """ rs.SelectObjectGrip(srf,28) #rs.SelectObjectGrip(srf,35) rs.Command("_Move 0,0,0 5,10,0 _Enter") rs.UnselectAllObjects() rs.SelectObjectGrip(srf,4) rs.SelectObjectGrip(srf,5) rs.SelectObjectGrip(srf,6) rs.SelectObjectGrip(srf,7) rs.Command("_Move 0,0,0 0,-10,0 _Enter") rs.UnselectAllObjects() rs.EnableObjectGrips(srf, False) #create contourlines in Z-direction and extrude them (floor plates) rs.SelectObject(srf) rs.Command("Contour 30,0,0 30,0,1 3.0 _Enter") rs.Command("ExtrudeCrv Solid=Yes 0.3 _Enter") #create contourlines in X-direction and use the pipe command (vertical support) rs.SelectObject(srf) rs.Command("Contour 30,0,0 31,0,0 2.0 _Enter") rs.Command("Pipe 0.2 _Enter") rs.DeleteObject(srf) rs.UnselectAllObjects()