import rhinoscriptsyntax as rs import random as ran # Delete all objects and start from scratch rs.DeleteObjects(rs.AllObjects()) bsize = 10 #side length of box dist = 20 # distance between boxes offs = bsize + dist # offset of boxes num = 35 # 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) for i in range(num): for j in range(num): for p in range(num): myran = ran.randint(0,9) if (myran >= 8): if ((i+j+p)%3) and ((i+j-p)%4): box = rs.AddBox(corners) rs.MoveObject(box, (i*offs,j*offs,p*offs)) else: box = rs.AddBox(corners) rs.MoveObject(box, (i*offs,j*offs,p*offs)) rs.EnableRedraw(True)