import rhinoscriptsyntax as rs import random as ran import fantastic_stairs_lib as fs reload(fs) rs.DeleteObjects(rs.AllObjects()) whereto = [0,5,5] angle = 10 #boxes with line (box1, line1)= fs.make_box_wline((0,0,0), 1.2, 1.2, 0.2, 1) (box2, line2)= fs.make_box_wline((0,5,3), 1.2, 1.2, 0.2, 1) rs.RotateObjects([box2, line2], whereto, angle, [0,0,1]) """ #eckige verbindung zwischen boxen pts1 = rs.CurvePoints(line1) pts2 = rs.CurvePoints(line2) rs.AddLine(pts1[1], pts2[1]) """ #runde verbindung zwischen boxen ## degree=0 einfach verbunden ## degree=1 tangentenstetig verbunden ## degree=2 kruemmungsstetig verbunden curve = fs.blend_curves(line1, line2, degree=1) (st_crv, tothgt) = fs.curve_to_stairline(curve) #stairs len_c= rs.CurveLength(st_crv) """ steps = int(len_c / fs.tt) tt = len_c/steps th = tothgt/steps steps = int(tothgt/fs.th) th=tothgt/steps tt = len_c/steps """ (steps,th) = fs.calculate_steps_height(tothgt) An=0 tt = (len_c-An)/steps if tt>0.32: tt=fs.tt P = steps/2 P = 4 pod_l=fs.calculate_podlen(len_c, tt, steps, P, An) fs.make_curved_podeststair(st_crv, steps=steps, th=th, tt=tt, pod_l=pod_l, P=P, An=An, DC=steps+1, s_width=1.2)