Pages

Tuesday, October 25, 2011

001_python scripting




_origami pattern w/ python scripting_ trying to model Ayaka Sushi by Ply Architecture


#origami
import
rhinoscriptsyntax as rs

def origami():

#num modules
segments = rs.GetInteger('how many modules?', 50)

#select curves
InnerCrv = rs.GetObject('select Inner curve', 4)
MidCrv = rs.GetObject('select mid curve', 4)
OuterCrv = rs.GetObject('select Outer curve', 4)
TopCrv = rs.GetObject('select Top curve', 4)

#divide curves
InnerCrvPts = rs.DivideCurve(InnerCrv, segments, True, True)
MidCrvPts = rs.DivideCurve(MidCrv, segments, True, True)
OuterCrvPts = rs.DivideCurve(OuterCrv, segments, True, True)
TopCrvPts = rs.DivideCurve(TopCrv, segments, True, True)

#draw triangles
for i in range(0, (len(TopCrvPts)-1),4):
Crv1 = rs.AddCurve((TopCrvPts[i], TopCrvPts[i+4], OuterCrvPts[i+2], TopCrvPts[i]), 1)
Crv2 = rs.AddCurve((TopCrvPts[i], MidCrvPts[i+1], OuterCrvPts[i+2], TopCrvPts[i]), 1)
Crv3 = rs.AddCurve((TopCrvPts[i+4], MidCrvPts[i+3], OuterCrvPts[i+2], TopCrvPts[i+4]), 1)
Crv4 = rs.AddCurve((TopCrvPts[i], MidCrvPts[i+1], InnerCrvPts[i], TopCrvPts[i]), 1)
Crv5 = rs.AddCurve((TopCrvPts[i+4], MidCrvPts[i+3], InnerCrvPts[i+4], TopCrvPts[i+4]), 1)

#create surface
rs.AddPlanarSrf(Crv1)
rs.AddPlanarSrf(Crv2)
rs.AddPlanarSrf(Crv3)
rs.AddPlanarSrf(Crv4)
rs.AddPlanarSrf(Crv5)

origami()

Sunday, October 23, 2011

008_SmartSurface




_water storage for power house. (Collect from roof -> sotre -> back to power house

Friday, October 21, 2011

Friday, October 14, 2011

035_idealhouse


_ideal high_rise housing @ songdo IBD, Korea

034_idealhouse_c

                               _night view of 3 core rotating tower
                                                                                 _testing @ Songdo IBD, Korea

034_idealhouse_b

                                         _3 core rotating 360

034_idealhouse_a

                                         _3 core twisting _testing w/ grasshopper