import rhinoscriptsyntax as rs import random import math rs.EnableRedraw(False) points = [] for i in range(100): number = random.uniform(0,50) print number point = [i*10, number, 0] points.append(point) #rs.AddPoint(point) rs.AddPolyline(points) """ scale = 10 for k in range(50): for j in range(50): for i in range(50): rfx = random.gauss(-50,50) rfy = random.gauss(-50,50) rfz = random.gauss(-50,50) point = [i*scale+rfx,j*scale+rfy,k*scale+rfz] rs.AddPoint(point) """ """ scale = 100 for k in range(50): for j in range(50): for i in range(50): rfx = random.uniform(-50,50) rfy = random.uniform(-50,50) rfz = random.uniform(-50,50) point = [rfx*scale,rfy*scale,rfz*scale] rs.AddPoint(point) """ """ xy_plane = rs.WorldXYPlane() grid_count = 20 grid_size = 10 rec_size = 8 for j in range(grid_count): for i in range(grid_count): rectangle = rs.AddRectangle(xy_plane, rec_size, rec_size) move_point = [i*grid_size, j*grid_size, 0] rs.MoveObject(rectangle, move_point) move_point[0] += rec_size/2 move_point[1] += rec_size/2 rotation_angle = (i+j)*1 rs.RotateObject(rectangle, move_point, rotation_angle) """ """ control_pt = rs.GetPoint("Please select the control point") xy_plane = rs.WorldXYPlane() grid_count = 20 grid_size = 10 rec_size = 8 for j in range(grid_count): for i in range(grid_count): rectangle = rs.AddRectangle(xy_plane, rec_size, rec_size) move_point = [i*grid_size, j*grid_size, 0] rs.MoveObject(rectangle, move_point) move_point[0] += rec_size/2 move_point[1] += rec_size/2 distance = rs.Distance(move_point, control_pt) #option 1 - proportional #rotation_angle = distance*0.5 #option 2 - reverse proportional rotation_angle = 10000/distance print rotation_angle rs.RotateObject(rectangle, move_point, rotation_angle) """