import rhinoscriptsyntax as rs import random as ran # delete everything and start from scratch allobjs = rs.AllObjects() rs.DeleteObjects(allobjs) bsize = 10 # side lenght of box dist = 1 # distance between boxes offs = bsize + dist # offset of boxes num = 19 # number of boxes in one row # create a box corners = [(0,0,0), (bsize,0,0), (bsize,bsize,0), (0,bsize,0), (0,0,bsize), (bsize,0,bsize), (bsize,bsize,bsize), (0,bsize,bsize)] rs.EnableRedraw(False) #3dimensional box for i in range(num): for j in range(num): for p in range(num): #myran = ran.randint(0,2) #if (myran < 1): if ((i+j+p)%3) and ((i+j-p)%3) and ((i-j+p)%3) and ((i-j-p)%3): box = rs.AddBox(corners) rs.MoveObject(box, (i*offs,j*offs,p*offs)) rs.ObjectColor(box,(0,0,200)) else: myran = ran.randint(0,9) if (myran < 2): box = rs.AddBox(corners) rs.MoveObject(box, (i*offs,j*offs,p*offs)) rs.ObjectColor(box,(i*(255/num),j*(255/num),p*(255/num))) #fibonacci """ gz = range(0,num**3,2) fibonacci = [0] a, b = 0, 1 while b < (num ** 3): fibonacci.append(b) a, b = b, a+b print fibonacci for i in range(num): for j in range(num): for p in range(num): myran = ran.randint(0,9) if not((i+j+p)/2 in fibonacci): box = rs.AddBox(corners) rs.MoveObject(box, (i*offs,j*offs,p*offs)) rs.ObjectColor(box,(i*(255/num),j*(255/num),p*(255/num))) """ #2dimensional box """ for i in range(num): for j in range(num): if not((2 < i <= 4) and (2 < j <= 4)): box = rs.AddBox(corners) rs.MoveObjects(box, (i*offs,j*offs,0)) for i in range(num): for j in range(num): if ((i+j)%3) and ((i-j)%3): box = rs.AddBox(corners) rs.MoveObjects(box, (i*offs,j*offs,0)) """ rs.EnableRedraw(True)