64
Python Scripts &Grasshopper Configurations 65
Straight Lines Curves 1, 2, 3 4, 5, 6 import rhinoscriptsyntax as rs import rhinoscriptsyntax as rs import math as m import math as m LinesGH = [] LinesGH = [] pts = [] pts = [] ptsBox = [] ptsBox = [] outerBoundary = [] centers = [] outerBoundary = [] length = Length origin = [0, 0, 0] sides = Sides multiple = Multiple length = Length resolution = LineRes sides = Sides multiple = Multiple class Lines(): resolution = LineRes def __init__(self, PointPOS): for i in range(resolution): class Lines(): mod = (i*multiple) % (resolution) def __init__(self, PointPOS): lines = rs.AddLine(PointPOS[i], for i in range(resolution): mod = (i*multiple) % (resolution) PointPOS[mod]) temp = (PointPOS[i], origin, LinesGH.append(lines) PointPOS[mod]) class GenerateObject(): lines = rs.AddCurve(temp) def __init__(self): LinesGH.append(lines) for i in range(sides): x = length*m.cos(i*2*m.pi/sides) class GenerateObject(): y = length*m.sin(i*2*m.pi/sides) def __init__(self): if i == 0: for i in range(sides): start = [x,y,0] x = length*m.cos(i*2*m.pi/sides) ptsBox.append([x,y,0]) y = length*m.sin(i*2*m.pi/sides) rs.AddPoint(ptsBox[i]) if i == 0: ptsBox.append(start) start = [x,y,0] curve = rs.AddPolyline(ptsBox) ptsBox.append([x,y,0]) outerBoundary.append(curve) rs.AddPoint(ptsBox[i]) points = rs.DivideCurve(curve, resolution) ptsBox.append(start) for i in points: curve = rs.AddPolyline(ptsBox) temp = rs.AddPoint(i) outerBoundary.append(curve) pts.append(temp) points = rs.DivideCurve(curve, resolution) Lines(pts) for i in points: temp = rs.AddPoint(i) GenerateObject() pts.append(temp) Lines(pts) GenerateObject()66
Cubes 7, 8, 9, 10 Spirals (Creating Spiral Boundary)Spheres 11, 12, 13, 14 15, 16Spirals 15, 16 import rhinoscriptsyntax as rsimport rhinoscriptsyntax as rs import math as mimport math as m LinesGH = []LinesGH = [] pts = []points = [] centers = [] outerBoundary = []multiple = Multipleresolution = len(pts) phi = (1+m.sqrt(5))/2 goldenAngle = 1/m.pow(phi,2)class Lines(): points = [] def __init__(self, pts): even = [] for i in range(count): odd = [] if i > 2: curves = [] mod = (i*multiple) % (resolution) points.append(pts[mod]) def DrawLines(): lines = rs.AddLine(pts[i], pts[mod]) start = points[0] LinesGH.append(lines) odd.append(start) for i in range(dots):Lines(pts) if i % 2 == 0: even.append(points[i]) else: odd.append(points[i]) curves.append(rs.AddCurve(even)) curves.append(rs.AddCurve(odd)) def Flower(): steps = dots offset = goldenAngle inc = (2-phi)*2*m.pi + offset angle = 0 scale = 1.2 for i in range(steps): r = i**scale angle += inc x = r*m.cos(angle) y = r*m.sin(angle) z = i*phi pts = rs.AddPoint([x,y,z]) points.append(pts) pts = Flower() DrawLines() 67
Straight Lines 1, 2, 3 Curves 4, 5, 6 Cubes 7 Cubes 8, 9 Cubes 1068
Spheres11Spheres12, 13Spheres14Spirals15Spirals16 69
Gaute Nordby Born with two skis underneath my feet, to surf the snow in the mythical land of Norway, I had an innate need to race from point A to point B. I started at a young age, first through shorter straight distances until I advanced enough to encounter complex, meandering pathways. Seeking further challenges, I was left with no other choice but to break free from the planar constraints of a map and venture off to start my mechanical engineering degree. The new digital, higher dimension world, lent itself to an endless stream of new possibilities. Finally, starting to feel my thirst for challenges quenched, the abstractness started to leave me unfulfilled in a new, unexpected way. Wearisome of the spurious world of theories, I traveled across the world to delve into the intersection of conceptual and reality. Learning how to efficiently combine the two, I met Jin, who was on a similar journey on his own.70
Hyung Jin YooNothing excites me more than connecting.Strive for finding numerous ways of connecting.A goal is to create a synergy,which can help us make a better world.Gaute and I have been connected.Engineering and Design have been connected.The goal was achieved,and we are proud to present this book to the world. 71
Penn Design Arch 743 Research Seminar: Form & Algorithm Fall 2017 Critics: Ezio Blasetti Cecil Balmond University of Pennsylvania Dept of Architecture72
73
Designed by Jin and Gaute74
Search