GSD_Cities New Ecologies

Page 1

ENTROPIED POROSITY

based on order and disorder in grid cities, a systemic taxonomy of performance logic is invented to perform at multiple scale in creating an active urban space


01

EMERGENT PATTERNS

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

02

AVOIDING A WALL CITY

Brooklyn’s soul and character is about the people and the ground through its multiplicity and diversity coupled with the connecting threads of culture, commerce and social as well as the connection to the larger urban fabric and networks to the five boroughs. Future urban planning and architecture of the Atlantic Yards needs to respond to these set of conditions. The ground plane becomes the medium from which one operates design-wise. An active living city tracks and regulates the flow of people as well as distorts and reorganizes itself to fit and accomodate the act of living and inhabiting. The city, now, can be organized according to emergent qualities of the flow of pedestrian that in turn distorts the underlying orthogonal grid of the site. The entropied moments of the protoblocks are marked by the high points, signalling the order and disorder that are inherent in active living cities. These moments become formalized and reorganizes itself through environmental factors as well as views towards and from Manhattan, becoming modern urban placemarkers for Brooklyn of the 21st century.


04

LEARNING FROM GRID CITIES

A taxonomy of performance logic is designed and deployed in the form and performance of a series of so-called protoblocks that can be molded and modified through changes of time and technology.

BROOKLYN

Brooklyn_Vanderbilt Yards

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

MANHATTAN, Penn Station

The protoblock will operate on 3 distinct elements: Corner, Grid and Ground

MANHATTAN, Central Park

Manhattan_Central Park

CORNER, GRID AND GROUND

SAN FRANCISCO

DUBAI

Dubai

03

LOS ANGELES

OPERATIONS > Spatialized Corner Condition that is either filled or eroded > Porous and performative ground condition > A highly ordered structure and organization that is distorted by site forces

From analyzing precedents of grid cities around, we are able to discern certain formative logic of cities and discover the rules and regulations that govern the organization of the city. 6 variables that have ties that bind the cities together are : grid measurements, grid geometry, block size, block grid, block porosity and corner conditions


40’

2-2

60’

3-3

<20’ variable

ROAD WIDTH GRID GEOMETRY URBAN BLOCK

10’

1

30’

1-1

60’

2-2

BLOCK POROSITY

1-P

30’

1-1

65’

2-2

80’

3-3

100’ P-3-3-P

Rigid vs. Natural

unchanged by diagonal

Rigid

Manhattan_Penn Station

Combinatory Performance

transformed by diagonal

Transformative

ROAD WIDTH

120’ 4-4

BLOCK GRID CORNER CONDITIONS

20’

unchanged by diagonal

San Francisco

4-4

3-3

40’

2-2

60’

3-3

120’ 4-4 400’ S-8-M-8-S

GRID GEOMETRY URBAN BLOCK

Fractalized

Rigid, Funneling

Los Angeles

90’

60’

transformed by diagonal

Brooklyn_Vanderbilt Yards

P-2-2-P

2-2

Manhattan_Central Park

60’

40’

Manhattan_Penn Station

P-1-1-P

San Francisco

40’

06

LEARNING FROM GRID CITIES: GRID GEOMETRY

Los Angeles

1-1

Manhattan_Central Park

30’

Brooklyn_Vanderbilt Yards

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

Dubai

LEARNING FROM GRID CITIES : ROAD WIDTH

Dubai

05

BLOCK GRID CORNER CONDITIONS BLOCK POROSITY


b

i

xi

xj

j

a

xa

X times

Manhattan_Penn Station

3b

3b

2b

a

Manhattan_Central Park

a

a

b

San Francisco

y

Brooklyn_Vanderbilt Yards

x+y+z = a

a

x+y = a x

Manhattan_Central Park

b

a b

z

Manhattan_Penn Station

2b

b

y

San Francisco

a

x

Brooklyn_Vanderbilt Yards

a

08

LEARNING FROM GRID CITIES: BLOCK GRID

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

LEARNING FROM GRID CITIES: URBAN BLOCK

b

xb

ROAD WIDTH

ROAD WIDTH

2b xb

X times X times

xb a

CORNER CONDITIONS BLOCK POROSITY

b

X times

b

URBAN BLOCK

2b

Los Angeles

BLOCK GRID

b

GRID GEOMETRY

a

a

xa

Dubai

URBAN BLOCK

xa

a

a

Los Angeles

GRID GEOMETRY

Dubai

07

BLOCK GRID CORNER CONDITIONS BLOCK POROSITY


SHAWN YEE SHIONG PANG STUDIO PLA CATALA

10

90%

70%

Manhattan_Penn Station

90%

San Francisco

40%

80%

60%

Brooklyn_Vanderbilt Yards

Manhattan_Penn Station San Francisco

20%

Manhattan_Central Park

Brooklyn_Vanderbilt Yards

LEARNING FROM GRID CITIES: BLOCK POROSITY

Manhattan_Central Park

LEARNING FROM GRID CITIES: CORNERS

100%

ROAD WIDTH

ROAD WIDTH

GRID GEOMETRY

GRID GEOMETRY

URBAN BLOCK

BLOCK POROSITY

0%

80%

20%

100%

Los Angeles

CORNER CONDITIONS

Dubai

BLOCK GRID

Los Angeles

URBAN BLOCK

Dubai

09

BLOCK GRID CORNER CONDITIONS BLOCK POROSITY


11

VERTICALITY VS. POROSITY

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

12

PROGRAMMING: DEGREES OF FREEDOM

RECREATION 4% COMMUNITY 4% RETAIL 8%

4

OFFICE 12% INFRASTRUCTURE 12%

GREEN 1 cell

HOUSING 60%

RETAIL 1 cell

RETAIL 1 cell

3

COMMUNITY 1 cell

210’

COMMUNITY 1 cell

RETAIL 1 cell

GREEN 2 cell

210’

1 basic cell

2 GREEN 2 cells

RETAIL 3 cells

COMMUNITY 2 cells

PROTOBLOCK = 1 acre, 7.1 FAR A strategy of basic building cells is used to populate the one acre protoblock. The smallest cell is 30’x30’ block, based on the ideal size of a small housing unit as well as NY ventilation rule. The aggregation of higher orders are combined to create other programs. Green spaces occur on each magnitude to act as a counterbalance to the built elements.

1 HOUSING 220 cells

GREEN 4 cells

COMMUNITY 2 cells

RETAIL 8 cells

OFFICE 42 cells

INFRASTRUCURE 30 cells

-1


20%

30%

40%

50%

60%

70%

80%

90%

14

FORM MAKING!

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

100%

tool >>> POROSITY SCRIPT

GROUND PROFILE

Option Explicit ‘Script written by <carlos de la Barrera / designemergente@gmail.com> ‘Script copyrighted by <www.designemergente.org> ‘Script version jueves, 22 de enero de 2009 22:32:24 ‘Modified by Shawn Y.S. Pang

10%

Call Main() Sub Main()

20% 30% 40% 50%

GROUND PROFILE

10%

POROSITY GRADIENT

Dim Box, M(2) ‘two arrays (the error was here, now is fixed) Dim size Dim i, j, k Dim X, Y, Z ‘the number of boxes in cartesian coordinates ‘by default (feel free to change this values) X = 15 Y=2 Z=0 ReDim arrMatrix(X, Y, Z) ‘in arrMatrix we will store all the boxes ‘we need to select objects to copy in a random way Box = Rhino.GetObject(“select one object to start the population”) If IsNull (Box) Then Exit Sub size = MyFuncCalc(Box) ‘now we call a function to calculate the boundaries of the objects ‘we don’t like superpositions ‘to perform the differents calculations and get speed we use the enableRedraw() ‘ so be patient... during the calculus Call Rhino.EnableRedraw(False) For i = 0 To X For j = 0 To Y For k = 0 To Z M(0) = CInt(i) * size(0) M(1) = CInt(j) * size(1) M(2) = CInt(k) * size(2) arrMatrix(i, j, k) = Rhino.CopyObject (Box, Array(0,0,0), M) ‘copy the objects Next Next Next

ROOF PROFILE

60%

Call Rhino.EnableRedraw(True) ‘so we need another nested, nested loop to pass over each box For i = 0 To X For j = 0 To Y For k = 0 To Z ‘we have a X% chance to delete an object If Rnd < .4 Then Call Rhino.DeleteObject(arrMatrix(i, j, k)) End If Next Next Next End Sub

70% 80% 90% 100%

ROOF PROFILE

13

Function MyFuncCalc(A) ‘enter an array

Combinations of Porosity are tested with scripting to create a multitude of unexpected and varying options as a way to generate and iterate through form-making.

End Function

Dim Bound, BSize(2) ‘again, two arrays Bound = Rhino.BoundingBox(A) ‘find the boundig of the objects BSize(0) = Rhino.Distance(Bound(0), Bound(1)) ‘calc the distance from a new point BSize(1) = Rhino.Distance(Bound(0), Bound(3)) BSize(2) = Rhino.Distance(Bound(0), Bound(4)) MyFuncCalc = Bsize ‘return the point with new coordinates


One Cell

15

INHABITING THE CORNERS

Linear 2 Cell

Linear 4 Cell

Four Square

Wrap Corner

Nine Squares

16

LIFTING THE GROUND

SHAWN YEE SHIONG PANG STUDIO PLA CATALA One Cell

One Cell

Linear 2 Cell

Linear 4 Cell

Four Square

Wrap Corner

Nine Squares

tool >>> SURFACE, BOX, LIFT SCRIPT Linear 4 Cell Linear 2 Cell

Nine Squares

One Cell

Option Explicit ‘Script partly written by <FOB> ‘Script partly copyrighted by <inmatesincharge.com> ‘Script modified by Kera Lagios and Shawn Y.S. Pang ‘Script version Teusday, Feb 14, 2008 4:00:25 PM Call Main() Sub Main() Dim x, y, z ‘These are the box x, y and z dimensions Dim box, boxx, boxy, boxz ‘These are the origin points for each box Dim arrboxpt(7),arrCorners Dim i ‘ defining height, width and depth of boxes x = 30 y = 30 z = 12

Linear 4 Cell

Four Square

Linear 2 Cell

Four Square

Dim idSurface : idSurface = Rhino.GetObject(“Surface to Panelize”,8, True, True) If IsNull(idSurface) Then Exit Sub

Linear 2 Cell

Wrap Corner

Dim intCountU : intCountU = Rhino.GetInteger(“Number of divisions per U direction”, 6, 2) If IsNull(intCountU) Then Exit Sub Wrap Corner

Dim intCountV : intCountV = Rhino.GetInteger(“Number of divisions per V direction”, 6, 2) If IsNull(intCountV) Then Exit Sub

One Cell

CORNER TYPES Linear 4 Cell

Dim uDomain : uDomain = Rhino.SurfaceDomain(idSurface, 0) Dim vDomain : vDomain = Rhino.SurfaceDomain(idSurface, 1) Dim uStep : uStep = (uDomain(1) - uDomain(0)) / intCountU Dim vStep : vStep = (vDomain(1) - vDomain(0)) / intCountV Dim arrUV(1) Dim arrPts() Dim u, v, j, k

Nine Squares

j=0 k=0

Four Square

Wrap Corner

Nine Squares

For u = uDomain(0) To (uDomain(1) + 1e-8) Step uStep For v = vdomain(0) To (vDomain(1) + 1e-8) Step vStep ReDim Preserve arrPts(j+k) arrPts(j+k) = Rhino.EvaluateSurface (idSurface, Array(u,v)) k=k+1 Next Next Rhino.AddPoints arrPts For i = 0 To Ubound (arrPts) boxx = arrPts(i)(0)-(.5*x) boxy = arrPts(i)(1)-(.5*y) boxz = arrPts(i)(2) ‘ setting all the corners of the box arrboxpt(0) = Array(boxx, boxy, boxz) arrboxpt(1) = Array(boxx+x, boxy, boxz) arrboxpt(2) = Array(boxx+x, boxy+y, boxz) arrboxpt(3) = Array(boxx, boxy+y, boxz) arrboxpt(4) = Array(boxx, boxy, boxz+z) arrboxpt(5) = Array(boxx+x, boxy, boxz+z) arrboxpt(6) = Array(boxx+x, boxy+y, boxz+z) arrboxpt(7) = Array(boxx, boxy+y, boxz+z) ‘ array of all 8 corners arrCorners = array (arrboxpt(0), arrboxpt(1), arrboxpt(2), arrboxpt(3), arrboxpt(4), arrboxpt(5), arrboxpt(6), arrboxpt(7)) box = Rhino.AddBox (arrCorners) Next End Sub


17

DIAGONAL ENTROPY

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

5

Diagonal: Longest line, fastest route

Using public program and pedestrian flow as disruptors in a stable system, variations, differences and mutations are created formally and programatically. The path of the disruptors are along the diagonal as it can both provide the longest facade wall, while being the fastest route between two points.

18

PROTOBLOCKS

Top:

The form-making of the protoblocks follows a recipe that can fluctuate from a highrise form to a strip of low rise while maintaining the same logic of performance

20 % Porosity

4

Middle: 60 % Porosity

3

Ground: 30 % Porosity

2

Lifting of Corners

1

Defining a Regular Grid

7X7

5X10

3X16

TALL

MEDIUM

LOW


19 NETWORKS AND RELATIONSHIPS TO THE CITY TO MANHATTAN, BROOKLYN BRIDGE

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

OCCUPYING THE SITE

20

ATLANTIC CENTER MALL

ATLANTIC AVE STATION (2,3, 4, 5, B, Q) CLINTON /WASHINGTON STATION (C)

TO PROSPECT PARK, BROOKLYN PUBLIC LIBRARY

BERGEN STATION (2,3)


21

MARKERS AND BEACONS

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

22

INHABITING THE GROUND

70% 30% 80% 20% 90% 10%

20% 80%

The protoblocks taken as a collection is an urban artefact that denotes and marks the act of urban living. Density and heights are affected by proximity to attractors like transportation and surrounding land use.

10% 90%

30% 70% 40% 60% 50% 50% 60% 40% 100% HARDSCAPE 0% GREENSCAPE

Different experiences and usage for the varying degree of porosity between hardscape and greenscape.


23

EMERGENT GROUND PATTERNING

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

24

URBAN LIFE AS GENERATOR

Distorted Pattern

Use

Topography


25

SCRIPTING AS PROCESS

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

26

CONTROLLING POROSITY tool >>> CONTROLLING POROSITY THROUGH ATTRACTORS the base script is from Roland Snooks, www.kokkugia.com/wiki as part of his open source code library

Option Explicit ‘-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------‘ Subroutine: attractorToolsScale ‘ Purpose: transforms objects based on proximity to attractors ‘ Author: Roland Snooks | 2007 ‘‘ Modification for RGB values, curves, inversion of sizes Shawn YSP 4/14/2009, now script scales objects smaller away from curves ‘----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Sub attractorToolsScale Dim i, j, arrObjects, arrNewPt, arrAttract, thresholdDist, scaleFactor, arrBBox, arrCntrPt, counter, arrAttPt Dim polylines, path, dblParam, dblAttDistTest, dblClosestAttDist, dblClosestAtt, adjAmount ‘ input arrObjects = Rhino.GetObjects(“Select objects”) arrAttract = Rhino.GetObjects(“Select curve attractors”, 0) thresholdDist = Rhino.GetReal(“distance threshold”, 20, 0) scaleFactor = Rhino.GetReal(“scale factor”, 1, 0) ‘ loop through each object and get the closest attractor For i = 0 To UBound(arrObjects) ‘ get object bounding box centerpoint arrBBox = Rhino.BoundingBox(arrObjects(i)) arrCntrPt = array((((arrBBox(2)(0)) + (arrBBox(0)(0))) / 2), (((arrBBox(2)(1)) + (arrBBox(0)(1))) / 2), (((arrBBox(0)(2)) + (arrBBox(4)(2))) / 2)) ‘ loop through attractors to find the distance to the closest counter = 0 For j = 0 To UBound(arrAttract) ‘get closest point - use for curves rather than points ‘dblParam = Rhino.CurveClosestPoint(arrAttract(j), arrCntrPt) ‘arrAttPt = Rhino.EvaluateCurve(arrAttract(j), dblParam) dblParam = Rhino.CurveClosestPoint(arrAttract(j), arrCntrPt) arrAttPt = Rhino.EvaluateCurve(arrAttract(j), dblParam) ‘ get distance dblAttDistTest = Rhino.Distance(arrAttPt, arrCntrPt) ‘ is it closer If counter < 1 Then dblClosestAttDist = dblAttDistTest dblClosestAtt = counter Else If dblAttDistTest < thresholdDist Then If dblAttDistTest < dblClosestAttDist Then dblClosestAttDist = dblAttDistTest dblClosestAtt = counter End If End If End If counter = counter + 1 Next ‘ if the object is within the threshold then operate on it If dblClosestAttDist < thresholdDist Then ‘ caculate the adjustment amount ‘adjAmount = 1 - ((thresholdDist - dblClosestAttDist)/thresholdDist) ‘ decrease infinite amount adjAmount = ((thresholdDist - dblClosestAttDist)/thresholdDist) / scaleFactor ‘ increase by factor of up to 100% x scaleFactor ‘ based on attractor proximity do something to the object (eg scale) ‘ scale Rhino.ScaleObject arrObjects(i), arrCntrPt, array(adjAmount,adjAmount,adjAmount) ‘ scale at_ChangeColor arrObjects(i),thresholdDist,dblClosestAttDist,scaleFactor End If next End Sub attractorToolsScale Function at_ChangeColor(obj,tDist,aDist,sFactor) Dim objColor, newColor ‘ calculate color ‘newColor =(Rnd ()* 255 - (1 - ((tDist - aDist)/tDist)) * 255) ‘normal rhino color 0-255 ‘newColor = RGB(Rnd*255, Rnd*255, Rnd*255) ‘for RGB scale newColor = RGB ((255-(1 - ((tDist - aDist)/tDist)) * 255), (255-(1 - ((tDist - aDist)/tDist)) * 255), (255-(1 - ((tDist - aDist)/tDist)) * 255)) ‘ change color objColor = Rhino.ObjectColor(obj, newColor) ‘Rhino.print objColor ‘at_ChangeColor= End Function


27

SKIN & BONES Mullion

Dense

Structure

INHABITING THE SKIN

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

TYPE: SPATIAL ORGANIZATON, POROSITY

Free

Housing : Rigid, Dense

Cultural : Flexible, Sparse Types of Bracing and Facade Division

Recreational: Free, Sparsest

Office: Rigid, Dense

Retail: Mix, Sparse

Modulated Thickness

Skin, Pulled away

Structure, Inhabited

28


29

THE NEW ATLANTIC YARDS

SHAWN YEE SHIONG PANG STUDIO PLA CATALA

RETURN TO THE POROUS CITY

30


Shawn Yee Shiong Pang Harvard Graduate School of Design Spring 2009


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.