#golden gate bridge skript import rhinoscriptsyntax as rs import random as ran import flipped_classroom_lib as fc rs.DeleteObjects(rs.AllObjects()) ########################################################################### ########################################################################### #Masse #length=1280 #total length (m) #heigth=230 #total height (m) #s_length=1970 #Laenge zwischen den Stuetzen 1970m #t_length=345 #Laenge nach den Stuetzen 345m #xcol=1 #columns in x direction #ycol=4 #columns in y direction #A=5 #module sixe distance between columns bsize=27 csize=1979 #Laenge total dsize=4 #Fahrbahndicke fsize=10 asize=3 gsize=47 ksize=35 lsize=35 msize=20 nsize=21 osize=10 psize=30 qsize=24 isize=18 ssize=55 xsize=3 ysize=9 zsize=29 hsize=46 ############################################################################ ############################################################################ #Fahrbahn #add box corners=[(0,0,0),(bsize,0,0),(bsize,csize,0),(0,csize,0),(0,0,dsize),(bsize,0,dsize),(bsize,csize,dsize),(0,csize,dsize)] bo=rs.AddBox(corners) rs.MoveObject(bo,[0,0,67]) ############################################################################# #Stuetzen #add box - Stuetze 1 #unterstes Teil corners=[(0,0,0),(ksize,0,0),(ksize,lsize,0),(0,lsize,0),(0,0,msize),(ksize,0,msize),(ksize,lsize,msize),(0,lsize,msize)] st=rs.AddBox(corners) rs.MoveObject(st,[-4,332.5,0]) ################################################### #Teil unter der Fahrbahn #corners=[(0,0,0),(bsize,0,0),(bsize,fsize,0),(0,fsize,0),(0,0,gsize),(bsize,0,gsize),(bsize,fsize,gsize),(0,fsize,gsize)] #st=rs.AddBox(corners) #rs.MoveObject(st,[0,345,20]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,gsize),(xsize,0,gsize),(xsize,fsize,gsize),(0,fsize,gsize)] st=rs.AddBox(corners) rs.MoveObject(st,[0,345,20]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,gsize),(xsize,0,gsize),(xsize,fsize,gsize),(0,fsize,gsize)] st=rs.AddBox(corners) rs.MoveObject(st,[24,345,20]) #Mittelteil 1 corners=[(0,0,0),(bsize,0,0),(bsize,fsize,0),(0,fsize,0),(0,0,xsize),(bsize,0,xsize),(bsize,fsize,xsize),(0,fsize,xsize)] st=rs.AddBox(corners) rs.MoveObject(st,[0,345,27]) #Mittelteil 2 corners=[(0,0,0),(bsize,0,0),(bsize,fsize,0),(0,fsize,0),(0,0,xsize),(bsize,0,xsize),(bsize,fsize,xsize),(0,fsize,xsize)] st=rs.AddBox(corners) rs.MoveObject(st,[0,345,47]) ###################################################### #Verstrebungen corners=[(0,0,0),(zsize,0,0),(zsize,fsize,0),(0,fsize,0),(0,0,xsize),(zsize,0,xsize),(zsize,fsize,xsize),(0,fsize,xsize)] st=rs.AddBox(corners) rs.MoveObject(st,[0,345,47]) ts=rs.RotateObject(st,[0,345,47],45,axis=[0,10,0],copy=False) ms=rs.MoveObject(ts,[2,0,0.5]) rs.CopyObject(ms,[0,0,20]) ########################################################################## ########################################################################## #add box - Stuetze 2 #unterstes Teil corners=[(0,0,0),(ksize,0,0),(ksize,lsize,0),(0,lsize,0),(0,0,msize),(ksize,0,msize),(ksize,lsize,msize),(0,lsize,msize)] st=rs.AddBox(corners) rs.MoveObject(st,[-4,1612.5,0]) ##################################################### #Teil unter der Fahrbahn #corners=[(0,0,0),(bsize,0,0),(bsize,fsize,0),(0,fsize,0),(0,0,gsize),(bsize,0,gsize),(bsize,fsize,gsize),(0,fsize,gsize)] #st=rs.AddBox(corners) #rs.MoveObject(st,[0,1625,20]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,gsize),(xsize,0,gsize),(xsize,fsize,gsize),(0,fsize,gsize)] st=rs.AddBox(corners) rs.MoveObject(st,[0,1625,20]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,gsize),(xsize,0,gsize),(xsize,fsize,gsize),(0,fsize,gsize)] st=rs.AddBox(corners) rs.MoveObject(st,[24,1625,20]) #Mittelteil 1 corners=[(0,0,0),(bsize,0,0),(bsize,fsize,0),(0,fsize,0),(0,0,xsize),(bsize,0,xsize),(bsize,fsize,xsize),(0,fsize,xsize)] st=rs.AddBox(corners) rs.MoveObject(st,[0,1625,27]) #Mittelteil 2 corners=[(0,0,0),(bsize,0,0),(bsize,fsize,0),(0,fsize,0),(0,0,xsize),(bsize,0,xsize),(bsize,fsize,xsize),(0,fsize,xsize)] st=rs.AddBox(corners) rs.MoveObject(st,[0,1625,47]) ######################################## #Verstrebungen corners=[(0,0,0),(zsize,0,0),(zsize,fsize,0),(0,fsize,0),(0,0,xsize),(zsize,0,xsize),(zsize,fsize,xsize),(0,fsize,xsize)] st=rs.AddBox(corners) rs.MoveObject(st,[0,1625,47]) ts=rs.RotateObject(st,[0,1625,47],45,axis=[0,10,0],copy=False) ms=rs.MoveObject(ts,[2,0,0.5]) os=rs.CopyObject(ms,[0,0,20]) ls=rs.RotateObject(st,[0,1625,47],90,axis=[0,10,0],copy=True) ps=rs.MoveObject(ls,[22,0,5]) qs=rs.CopyObject(ps,[0,0,20]) rs.CopyObject([ps,qs],[0,-1280,-0.5]) #################################################### #Teil oberhalb der Fahrbahn #corners=[(0,0,0),(bsize,0,0),(bsize,fsize,0),(0,fsize,0),(0,0,ssize),(bsize,0,ssize),(bsize,fsize,ssize),(0,fsize,ssize)] #st=rs.AddBox(corners) #rs.MoveObject(st,[0,1625,69]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,ssize),(xsize,0,ssize),(xsize,fsize,ssize),(0,fsize,ssize)] st1=rs.AddBox(corners) rs.MoveObject(st1,[0,1625,69]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,ssize),(xsize,0,ssize),(xsize,fsize,ssize),(0,fsize,ssize)] st2=rs.AddBox(corners) rs.MoveObject(st2,[24,1625,69]) #Mittelteil 1 corners=[(0,0,0),(bsize,0,0),(bsize,asize,0),(0,asize,0),(0,0,ysize),(bsize,0,ysize),(bsize,asize,ysize),(0,asize,ysize)] st3=rs.AddBox(corners) rs.MoveObject(st3,[0,1628.5,115]) ################################################### #Teil 1 oberhalb der Fahrbahn corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,hsize),(xsize,0,hsize),(xsize,fsize,hsize),(0,fsize,hsize)] st4=rs.AddBox(corners) rs.MoveObject(st4,[1.5,1625,124]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,hsize),(xsize,0,hsize),(xsize,fsize,hsize),(0,fsize,hsize)] st5=rs.AddBox(corners) rs.MoveObject(st5,[22.5,1625,124]) #Mittelteil 3 corners=[(0,0,0),(qsize,0,0),(qsize,asize,0),(0,asize,0),(0,0,ysize),(qsize,0,ysize),(qsize,asize,ysize),(0,asize,ysize)] st6=rs.AddBox(corners) rs.MoveObject(st6,[1.5,1628.5,161]) ################################################### #Teil 2 oberhalb der Fahrbahn #corners=[(0,0,0),(nsize,0,0),(nsize,fsize,0),(0,fsize,0),(0,0,psize),(nsize,0,psize),(nsize,fsize,psize),(0,fsize,psize)] #st=rs.AddBox(corners) #rs.MoveObject(st,[3.5,1625,130]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,psize),(xsize,0,psize),(xsize,fsize,psize),(0,fsize,psize)] st7=rs.AddBox(corners) rs.MoveObject(st7,[3,1625,170]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,psize),(xsize,0,psize),(xsize,fsize,psize),(0,fsize,psize)] st8=rs.AddBox(corners) rs.MoveObject(st8,[21,1625,170]) #Mittelteil 2 corners=[(0,0,0),(nsize,0,0),(nsize,asize,0),(0,asize,0),(0,0,ysize),(nsize,0,ysize),(nsize,asize,ysize),(0,asize,ysize)] st9=rs.AddBox(corners) rs.MoveObject(st9,[3,1628.5,191]) ################################################## #Teil 3 oberhalb der Fahrbahn #corners=[(0,0,0),(qsize,0,0),(qsize,fsize,0),(0,fsize,0),(0,0,psize),(qsize,0,psize),(qsize,fsize,psize),(0,fsize,psize)] #st=rs.AddBox(corners) #rs.MoveObject(st,[7,1625,180]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,psize),(xsize,0,psize),(xsize,fsize,psize),(0,fsize,psize)] st10=rs.AddBox(corners) rs.MoveObject(st10,[4.5,1625,200]) corners=[(0,0,0),(xsize,0,0),(xsize,fsize,0),(0,fsize,0),(0,0,psize),(xsize,0,psize),(xsize,fsize,psize),(0,fsize,psize)] st11=rs.AddBox(corners) rs.MoveObject(st11,[19.5,1625,200]) #Mittelteil 3 corners=[(0,0,0),(isize,0,0),(isize,asize,0),(0,asize,0),(0,0,ysize),(isize,0,ysize),(isize,asize,ysize),(0,asize,ysize)] st12=rs.AddBox(corners) rs.MoveObject(st12,[4.5,1628.5,221]) #fc.make_box([0,0,67],xsize=bsize,ysize=csize,zsize=dsize) #fc.make_box([0,1625,0],xsize=esize,ysize=fsize,zsize=gsize) ################################################### #Stuetze 2 kopieren rs.CopyObjects((st1,st2,st3,st4,st5,st6,st7,st8,st9,st10,st11,st12),[0,-1280,0]) ############################################################################ ############################################################################ #Stahlseil #Stahlseil Mitte sta=rs.AddCurve(([6,350,230],[-5,985,-67],[6,1630,230]),degree=2) stah=rs.AddCurve(([21,350,230],[33,985,-67],[21,1630,230]),degree=2) rs.AddPipe(sta,0,1) rs.AddPipe(stah,0,1) #Stahlseil Seite 1 sta1=rs.AddCurve(([0,0,71],[0,167.5,67],[6,349,230]),2) pip1=rs.AddPipe(sta1,0,1) #Stahlseil Seite 2 sta2=rs.AddCurve(([27,0,71],[22,167.5,67],[21,349,230]),2) pip2=rs.AddPipe(sta2,0,1) #Stahlseil 3 und 4 rp=rs.RotateObject((pip1,pip2),[13.5,990,0],180,axis=None,copy=True) ############################################################################ ############################################################################ #Pfeiler #rs.AddCylinder([0,0,67],height=10,radius=0.5,cap=True) #rs.AddCylinder([0,10,67],height=15,radius=0.5,cap=True) azpf=10 #Anzahl der Pfeiler lapf=345 #Laenge abpf=2 #Abstand zwischen den Pfeiler hoepf=[2,3,4,5,6,7,6,5,4,3] #Hoehe der Pfeiler #loop erstellen fuer Pfeiler alle paar Meter for i in range (lapf): y_position=i*abpf pf=rs.AddCylinder([0,40,71],1,radius=0.5,cap=True) rs.CopyObject(pf,(0,10,0)) h=71 rs.AddPoints(([0,40,71],[0,50,71],[0,60,71],[0,70,71],[0,80,71],[0,90,71],[0,100,71],[0,110,71],[0,120,71])) l=rs.AddLine([0,50,71],[0,50,h+20]) l1=rs.CopyObject(l,[0,10,0]) l2=rs.CopyObject((l,l1),[0,20,0]) rs.AddPipe(l2,0,1)