Welcome to the home for Digital Research 2013

Here you will be asked to post a screenshot as well as an approximately 400 word description of the criteria or parameters that you implemented in your use of this weeks precedent study.

Here is the schedule for the semester, including the student responsible for moderating the discussion:

Performative
8/20- Shanghai Tower- Beorkrem
8/27- Versioning- Steven Danilowicz
9/3- Adaptive Components- Dylan davis
9/10- Material Constraints- Christian Sjoberg
9/17- Programmatic Constraints- Neil Edwards

Generative
9/24- Aesthetic- Trevor Hess
10/1- Biomimicry- Ben Sullivan
10/8- NO CLASS- Fall Break

Interactive Design
10/15- Smart Objects- Lina Lee
10/22- Smart interfaces- Isabel Fee

Data Visualization
10/29- Emotive Expression- Chris Pockette
11/5- Physical Expression-
11/12- Daylighting-
11/19- Final Project begins
11/26
12/3

Wednesday, December 11, 2013

BusStop_Edwards




The motivating element behind this bus stop design is the idea of increasing covered space as the approach of the bus draws near. Not only does this allow for a larger number of users to be protected from precipitation, but also the movement of the overhead planes signifies the arrival of the bus. The planes occupy the interior of the bus stop when the bus if furthest from returning to this location. As the bus slowly draws nearer, the planes rotate outward and around until they are in a direct opposition to their original position inside of the bus stop.   Users will learn over time how far off the bus is based on the location of the planes in relation to their respective arcs. I have shown the overhead planes in a drastically different tone than the remainder of the bus stop intentionally, as I would like to think that the planes would read differently and be somewhat noticeable from a distance. The script uses boundary representation components that are manipulated based on the location of the bus relative to the location of the stop. 

Tuesday, December 10, 2013

Bus Stop

Firefly offers the ability to create interactive programs and quickly mock-up, prototype ideas for interactive objects and devices in grasshopper.  It achieves this mostly by sending data back and forth over the serial port really quickly. This enables real-time feedback between hardware devices such as Arduino microcontroller and the rhino and grasshopper modeling environment. This solution for the urban bus stop, I designed a parametric wall. When the bus approaches, the wall gives a visible formal change and different variation. Also, the bus shelter can be self-sustaining to take the maximum amount of sunlight possible and blend into the surroundings.

 
 

Tuesday, November 19, 2013

BeardenPark_Edwards


Context-free has proven itself to be a fairly versatile program for creating variations of simple scripts. For the park, I wanted a grammar that would have large, open spaces in opposition to small, narrow spaces. Using the DOUBLE variable and moving the replicated form far enough away for the two to interact made for some interesting variations. I chose this iteration (CJS) because it was close to my original idea of opposition. The large spaces are radiating out from two centers, yet the offest nature of the doubled forms create a new center that is bridged by some of the shapes.

startshape DOUBLE

rule DOUBLE {

A {}

A {x 3y -3 a -.5 z -1}
}

rule A {
SHAPES {s 3 x 2 y 3 sat 0 b -1 a -.5}

A {s 1 x 1y -.5 r 90  hue -4 b -.05}
}

rule A {
SHAPES {s 5 .2}

A {s .75 1 x -.25 y .5 r 180 sat -.25 b -.05 a -.03}
}

rule SHAPES {
SQUARE {hue 111 sat 1 b 1
}
SQUARE {s  -1  hue 111  b -1
}
SQUARE {b .75 hue 111 a -.2
 }
}    

Tuesday, November 12, 2013

Accordion Bus Stop


This bus stop is designed to react specifically to the amount of time left for the bus to arrive.  The aspect of the bus stop that changes is the area that it covers.  As the bus gets closer to the stop, the shelter accordions out to allow for more people to congregate under its shelter.  This occurs in the screen on the wall of the bus stop as well as the angled roof structure sheltering the bus patrons. 
The grasshopper script that I built to run this splits the shelter into three different components: The middle portion of the screen, the top and bottom layers of the screen, and the roof structure of the stop.  The screen layers work the same way in that a line is drawn from the anchor point of the bus stop and extends out from 5’ to a maximum of 30’.  This line is divided into 10 sections, and then those points are then made into lines along the base curve.  From there, the midpoints of each line are extracted and offset from the base line based off of an inverse formula to make the points move further away from the line as the line became shorter to allow for the accordion affect.  The midpoints were then joined by lines and assigned rectangular profiles. 
From here, the points on the base curve became the structural columns for the screen and roof to attach to.  This is where the separation of the top and bottom layers of the screen comes into play.  The lines for the columns were drawn between these two layers, and then piped to act as circular columns in the system.  The roof structure is then laid on top of these columns by applying a rectangular profile to a sloped line.  Then the midpoint of these rectangular members is evaluated on the front and back of the members, made into a curve, and then lofted together in the same way that the layered elements of the screen were.  This creates an accordion roof structure that is flexible enough to allow for the expansion and contraction of the station.





Arduino

The integration of the Arduino into my project was conceptually pretty easy. It expands on the system I envisioned last week in which the segmented roof of the bus stop would open up to encourage people to stand closer to the road as the bus approached. Thus, the rotation of the Arduino would just facilitate the rotation of the roof panels.


I think it is more interesting, however, to propose an alternate set of configurations that do not simply provide rotation to a building element. Rather, if these elements need to move in a straight line, how do we use the rotational movement of the Arduino to facilitate that? How would  we take the rotational movement and amplify it, if we do not want a one to one correlation between the movement of the element and the Arduino? My first instinct is to use a series of gears to make this movement possible. By making a geared track on a wall, we can use a gear mounted on the Arduino to move it in a straight line. Or if we wanted to amplify the movement of the Arduino we would use a small gear on the motor, and a large gear on the element that we are trying to move. While the torque would certainly burn out the tiny motor that we have, I think that these are much more interesting questions than simply integrating the motor into my preexisting design.

Monday, November 11, 2013

Urban Bus Stop_ Arduino_ Dylan Davis


Firefly for Grasshopper is used to bridge the gap between Grasshopper and the Arduino micro-contoller.  This allows for the collection of real-time data from internet feeds or remote sensors.  These sensors, that are creating a measurable output, can affect the surroundings by controlling lights, motors, and other actuators.

For my Bus stop design, I utilized the structure of the previous iteration and reformed the moving partition walls to be ceiling panels.  These panels can determine the location of occupants inside the bounds of the bus stop and position themselves overhead.



The bus stop will playfully engage with occupants as the panels follow people as they move through the space.  When the bus arrives and occupants begin to form a line, so will the panels.

Monday, November 4, 2013

Davis_Urban Bus Stop

In order to signify occupants that the bus is approaching, this bus stop has four partition walls that are transformed by vectors and colors, all calculated by the remaining time before the Bus' arrival.  By utilizing the excel spreadsheet, these values were extracted and manipulate the partition walls.

The walls act as moving seating over-top a garden space to make the wait between buses more enjoyable for occupants.  The bus stop will engage with public and signify the remaining amount of time to even distant late occupants. 




 When the bus does arrive, the partition walls will align with the street.  This will direct circulation and provide shading until occupants aboard the bus, making their experience at the bus stop more enjoyable. 




Sjoberg Responsive Urban Bus Stop



          This solution for the urban bus stop problem was derived from the changing occupancy as the bus approaches, the movement of people through the space, and the need for a visible formal change to signify the approach of the bus. When the bus has just left and will not be arriving for some time, the form defines a smaller space. As the bus draws nearer, it expands to adapt to the now greater occupancy. This expansion in three directions will extend toward the two directions of approach, and shelter the occupants as they line up to enter the bus. The expansion will be easily readable from a distance and serve to convey the buses proximity. This form uses sets of catenary arches which create a stable structure and light appearance. In the script, The time until arrival is used as a divider for the step size of the rotation of the catenary sets.








Sjoberg Grammar Evolver

         The processing script used to create evolutionary iterations of this design allowed for an ever changing interpretation of design criteria. I chose three simple variables in order to retain the overall essence of the original script. These variables were move, scale, and brightness. Its pretty incredible some of the unexpected outcomes even with limited variable inputs. The highlighted iteration in the below image exemplifies this. It has a sort of impressionist painting quality to it. In class we discussed the emergence of logic within the script, I was surprised by the number of iterations that seemed to highlight a single original action of the script. I chose, for the final iteration, a composition that had a strong network of circulation and a variety of overlapping spaces at a key moment.

Tuesday, October 29, 2013

Context Free - Grammar Evolver

Starting with genetic algorithms, its was interesting to see that a few variables could influence the design so much. Using less complex geometry and more variables that changed small things in the design lead to a much greater degree of diversity in the choices than many of the objects that we were making before. Whereas randomness and chance lead to interesting shapes before, it was decisions about what variables to alter that gave the greatest control over design. At first this provoked me to change all of the numbers in my design to variables, but this lead to wild inconsistency within the design, and after many rounds of options I was no closer to an interesting shape than I was at the beginning. Thus, after experimentation I found that only altering a few critical variables that I was able to create a process that would allow me to choose and design predictably.



Monday, October 28, 2013

Romare Bearden Park



In these new set of variations, I continued with the idea of allowing the "emerging" shapes to become the programatic aspects of the park.  The boxes represent public gathering spaces and circles become pavilions (or beer gardens).  In an attempt to = define the circulation within the park, paths become restricted to the negative space between the boxes and circles.  These paths are represented by an organic pixillation of green foliage created by the density of trees.  This foliage acts as the connector between spaces and creates a sense of ambiguity/randomness to the design.


In this particular variation, I found the conversation between the built and natural environment to be in balance.  The three large circles that represent the built environment are dissected by two perpendicual paths and create a gestalt central square.

-Dylan

Romare Bearden Park Context Free Design

Romare Bearden Park Context Free Design

Due to the collage influence from Bearden, I decided that some simple layering could bring out a parti that could describe a similar process to which collage artists work.  The background is a grid of layered circles, squares and triangles.  Each of these figures is rotated randomly and then overlaid with copies of that same grid.  The grid is then scaled, copied, and rotated to create a variety of densities and engaging boundary for the park.  For the walls of the park, I was thinking along the lines of Mies' Brick  Country House.  The lines are randomly rotated and translated away from the original line to fill the park space.  Here, the walls/paths are collected inside of the more densely packed middle section of park.



startshape PARK
background { b -.1 sat 0.25 hue 44 }


rule PARK{
PLANTS[]
WALLS[]
}

rule WALLS {
50* {y 3 x 4 r 0..90} SQUARE{s .25 5 z 10}
}

rule PLANTS {
2 * {r 0..360}PLANTS2 {}
}


rule PLANTS2 {
4 * {s .65 .65 r 0..360} PLANTS1 {}

4* {f 45 s .65 .65 r 0..360} PLANTS1{}
}


rule PLANTS1 {
1 * {y -3} PLANTS_SHIFT1{}
}

rule PLANTS_SHIFT1 {
1 * {x 3} PLANTS_GRID {}
}


rule PLANTS_GRID {
20 * {y -1.05} PLANTS_ROWS{}
}


rule PLANTS_ROWS {
20 * {x 1.05 } FOLIAGE{}
}

rule FOLIAGE .33 {
SQUARE[a -.5 b .5  .. .75 hue 120..150 saturation .5 r 90..270]
}

rule FOLIAGE .33 {
CIRCLE[a -.5 b .5  .. .75 hue 120..150 saturation .5]
}

rule FOLIAGE .33 {
TRIANGLE[alpha -.5 b .5  .. .75 hue 120..150 saturation .5 r 90..270]
}


ContextFree + GrammarEvolver

Using the square shapes in Context Free, I revisited the quilt-like patterning but with a twist. The rudimentary shape of the square is run through the recursion sequence, becoming fractal-like in it's placement & sizing.
From the Romare Bearden collages, a multitude of colors are used. In the context-free code, a Hue variable is inserted so that each recursion of the square may change color. This results in a number of colors within each variation, rather than only one color per. 
Now that the constraints are set to 'squares only, colors changing within', the Grammar Evolver of 'Processing' app provides the various random possibilities:

 From each choice, a new set of evolved variations based upon the 'fittest' is passed on into the next generation. Eventually, a final version is evolved into that which has the traits most likely to result in a nice design for the Romare Bearden park:


Tuesday, October 22, 2013

Context Free


The nice thing about Context Free is that can be shared, reused across diverse way and created pattern easily as much as we want with only a few lines. I generated grid street pattern for Romare Bearden Park design which streets run at right angles to each other.
Rectangular spaces indicate open spaces for informal play as well as an area for event gathering. And small rectangular space inside is space for exhibition to offer a variety of ways to have fun at the park. Grid lines mark the trails linking around the part including bike and pedestrian path. Around the path and rectangular spaces, I created natural features to generate relax spaces. And Medium and large trees provide boundaries at the corners and streets.  



startshape SHAPE
tile {s 54}
background {h 91.6 b .5 sat .7}

rule R{
SQUARE{}2*{f 45}R{s.6 1r-90x 2y 1}
}

rule SHAPE{
    2 * {s .5 x 9 y 9 b .2}
    {4*{r 90 x 36}
    R{}
    SQUARE {s 17.2 x 18 y 18 b .6 z -1}}
    2*{s .5 x -4.5 y -4.5 z 1 b 1}
    SQUARE {s 16.7 x -9 y -9 z -1 b .5}
}

 

Sjoberg Context Free RB Park



              This solution for the design of Romare Bearden Park was generated from a programatic overlapping of different spaces. I picked this composition because it created a density of circulation between the major green spaces as well as a buildup of smaller compositional elements (red) which were imagined as a market area. The variety of relationships between these green spaces also serves to create a dynamic park. Some spaces bleed to the street, some exist in isolation, and some either overlap or contain others.
This was accomplished with a variety of scaling and movement functions as well as alterations to visual  differences in color and density.


startshape DOUBLE
background {hue 100 sat 0.5 b .5 }

rule DOUBLE {
A {}
A {x .5 y -.2 a -.89 z -1}
}

rule A {

SHAPES {s 3 x 2 y 3 sat 0 b -1 a -.5}
A {s 1 .9 x .5 y -.5 r 90  hue -4 b -.05}
}

rule A {
SHAPES {s 5 .2}
A {s .8 1.07 x -.2 y .5 r 90 sat -.1 b -.05 a -.03}
}

rule SHAPES {
SQUARE {hue 100 sat 1 b 1}
SQUARE {s  -1 .93 hue 100  b -1}
SQUARE {b .8 hue 100 a -.2 }
}

SEED: FJX Original


Illustrator edited park







Context Free

When I started to think through the logic of context free, I began to realize that it would be easier to program the park and its geometry through a series of interrelated sketches, that would all act in a different geometric logic. This way, the park elements, elevation, trees and walkway could each have their own logic, and not be dependent on the geometry that came before it. Thus, the final park design is shown by overlapping the different images that came out of each [ground, tree and walkway] script.

Before constructing any of the scripts, I decided on fractal logic, where each square of the park was divided into sections. Given that the original park was a 2:1 rectangle, this act of subdivision allows me to keep the existing geometry of the park constant. From there it was a matter of modifying a subdivision script, consisting of a 2:1 outline shape, and a 1:1 4-square, or 9-square fractal shape. This is derived from the quad city example script that uses a whole and quads to make city fractals.

To design each layer, I modified the chance that each QUAD shape rule would be selected. By doing so, I could affect the chance of subdivisions in the design. By doing this, I could make a park with fewer subdivisions, or one with more subdivisions depending what the aesthetics of the park element called for. For the landscape element, I made sure that none of the squares were white and tried to represent a pixel-like map of the topology. This resulted in a number of larger fields, and then many smaller fields that could represent a rapid change in elevation.

For the trees I utilized a rotated 9-square subdivision. The reason for the 9-square subdivision is that in a non-rotated configuration, the center square could be empty, and could approximate the organization of trees around a field. By rotating the subdivided square I could achieve a pseudo-random organization that approximated the organization of trees better than a non-rotated square could.

Finally, for the walkways script, I changed the chance of subdivision to be very low, so that the park would be subdivided into larger shapes. Each square was colored to represent a specific quadrant of a circle. This in effect generates a programmed pathway that is determined by adjacent squares. In theory this works, but in practice the represented quadrant had to be fudged a little bit, since the individual subdivisions did not have an awareness of the colors around them.




Davis_ContextFree_RBPark



The script made generates a random iteration of tentacles stretching across the extents of the window.  These curves are made from random assortment of orange circles and black squares.  I specifically chose this variation due to the unique placement of the red and blue triangles in the center of the window.  These triangles are the "emergence" that I wanted in my final artifact that will become a celebrated social space in the program for the redesign of the Romare Bearden Park.



After playing with the forms created by the Context Free program, I assigned each of the shapes a programatic element of the park.  The orange circles became plots of grass, the black squares formed into kiosks and a sheltered beer garden, and the triangles became a double-level cafe that overlooks the entire park.  This final product still expresses the flow of circulation within the park, and by using the Context Free program, created a hierarchy of geometries based off arbitrary design.

Monday, October 21, 2013

RecursiveFormRomareBeardenPark

Starting with columns and then adding rows in ContextFree, a series of squares combines to form an 80'X50' rectangular patchwork. Seeing some of Romare Bearden's collages inspired this configuration of quilt-like patterning; visual distinctions made with the tonal lightness or darkness of the squares.
In order to break up the orthogonal nature of simple column & row squares, angles of 45 are applied to the last set of the right-angle-ruled Squares. Using angles other than 0,45,90,135,180,etc. creates forms "spun" atop each other resulting in a kaleidoscopic effect. 
From this basic plan, I exported the SVG into AI, saved as DWG, then opened in RHINO. From within Rhino, extrusions to certain squares provided barriers and areas to sit for the park. Basing the intensity of extruded curves to correlate to tonal patterns from the original context free image, the park has a defined passive area in contrast to an active area. Similar to the way the park is now, with an open swath of land progressing towards an active, busy area, the design from context free is more patterned.
 
Starting with ContextFree &
Using the Variation "YIF":


startshape column

rule column {
5 * {y 1} row {} // grid spacing
}

rule row {
8 * {x 1} rightangle {} 
}

rule rightangle  {
SQUARE {hue 0 sat 0 b 0}
rightangle {s 1 r 90}
}

rule rightangle {
SQUARE {sat 1 b 0.5}
rightangle {s 0.99 r 90 a -0.3}
}

rule rightangle {
SQUARE {b 1}
rightangle {s 0.7 r 45}
}


The basic pattern is formed:





By emulating the color schemes of Romare Bearden's collages in Illustrator, selective toning results in:



In Rhino, extruding curves brings the squares into the Z-axis, providing planes, frames, & places for repose:

Tuesday, September 24, 2013

Sjoberg Programatic Constraints

             This weeks focus on programatic constraints took us through the process of creating a script to re imagine the Seattle public library. We started with a spreadsheet from which values could be referenced  in order to create forms representing the programatic volumes. From this point our script used the height of the boxes to determine the vertical spacing. The iterative portion of this script came from the use of random number generators that would move the volumes in the x and y dimensions. This created a means of variation for the stacked form. The ability to insert data from a spreadsheet in grasshopper is a new concept to me. The benefits are easily imaginable, but primarily it allows you to reference sets of external data that are based off of real world constraints. Lunchbox, as a toolset allows for the division of surfaces for paneling and structure as well. Moving forward with our exploration of Grasshopper I'm sure the skills in this exercise will be implemented in many forms.

Seattle Public Library


With the Seattle Public Library script, we are starting to get to a point that overlaps with Digital Projects. While, it is interesting to compare and contrast the two different programs in their use of spreadsheet integration, in this case Digital Projects may have been a better program to use. First we read the parameters for each of the building spaces out of a spreadsheet, and then apply the floor-height and floor-to-floor-height variables. This gives us a nice line along the origin of these boxes (not off of the center) from which to deviate. Here it may have been helpful to align all of the forms around their centers so that we would get a slightly more realistic final shape, without so much overhang. Then we randomly move all of the shapes along their XY-planes to create different versions, by changing the seed of this random number generator we get different variations. Lofting the edges of the different boxes creates the final form.

If we wanted to make this script a more sophisticated, we could tweak the amount that each box could deviate from the original axis so that we could not get some of the impossible overhangs that currently come out of the script. Another option is to parameterize the lofts so that each variation lofts automatically and uses a logical system. This would require some advanced coding, but it would be interesting to see when it could go. In this case the lofts would all have a particular logic and the building would optimize for different effects that the lofts can create, such as maximizing atrium space, minimizing material, etc.

Programmatic Constraints


The Seattle Central Library identified programmatic clusters: five of stability and four of instability. Each platform is a programmatic cluster that is architecturally defined and equipped for maximum, dedicated performance. The spaces in between the platforms function as trading floors where librarians inform and stimulate, where the interface between the different platforms is organized spaces for work, interaction, and play.

We started look at diagram and focused on exploring methods for engaging data into grasshopper and using it to create geometry output. Based on the Excel spreadsheet, we used Lunchbox "Excel reader" component to calculate dimensions. We found variables width, number of floors, and floor to floor height of each space from the excel spreadsheet to make five stacked boxes. We took the data to define the height of each block using a MassAddition component and Vector components, and a Replace component and Random components were used to remove boxes to manipulate the volumes.

I think, Lunch box plug-in is very useful. This plug-in includes components for parametric geometry, paneling, structure, utilities, and workflow. One of great things using Lunch box in grasshopper, it helps us simple to work comparative to conventional grasshopper when modeling and creating programmatic placement.
 

Monday, September 23, 2013

ProgrammaticConstraints_Edwards



To complete the Programmatic Constraints lab, we modeled a Rhino file after OMA’s Seattle Public Library. Using the Grasshopper plugin called LunchBox enabled us to use data located in an Excel file to drive the components of the script.

Lunchbox will grab specified data out of an Excel file that is open and sourced from the desktop. This is accomplished by using ExcelRead components. We used a file that had rough estimates of the dimensions of the floor plates found in the Seattle Public Library and their respective heights in relation to one another to manipulate the Grasshopper script. The script was set up so that the parameters were controlled by number sliders that were referencing the Excel file information. These parameters were manipulated to create volumes that were similar to the main spaces found in the form of the Seattle Public Library.

The columns of data used from the file to manipulate the script were the Width, the Number of Floors, and the Floor to Floor Height. Using a MassAddition component and Vector components, the volumes were stacked up on top of one another, and a Replace component was used to remove every other volume to create spaces between the programmatic “boxes” of Seattle Central. A set of Random components was then used to manipulate the volumes in the X and Y axes.

LunchBox also provides the user with an array of textures and grids to use on surfaces. Once I chose the iteration of the script that I found to be the most interesting, I used this texture feature to add a diagrid structure to the programmatic boxes. I then used Rhino to create a series of planes to replicate the form of the Seattle Public Library. I decided, however, to alter the planes defining the interstitial space slightly, in order to better display the success of the script. Once I created the planes, I used LunchBox to add a separate texture from the diagrid of the programmatic boxes.    

Seattle Public Library_Dylan Davis



LunchBox is a plug-in for Grasshopper used in the lab to study the Seattle Public Library, designed by Rem Koolhaas.  The glass and steel building consists of several floating platforms wrapped in a large steel net around a glass skin.  The floating boxes represent different program within the building, each possessing its own width, length, number of floors, and floor to floor height.  The building's shape was created based off Koolhaas' philosophy that the building's functions should dictate the form, instead of the structure.

By creating an excel spreadsheet with each program and its calculated dimensions, Excel Reader in Lunchbox can pull specific data and utilize it within the grasshopper script.  For lab, we pulled the width, number of floors, and floor to floor height of each space from the excel spreadsheet and made overlapping boxes.  Then by adding up all the heights with Mass Addition, a list can be created with the start height of each programatic piece.  These values are then used as vectors to stack each of the boxes.  Although with Rem Koolhaas' design, he removed the kids space, living room, mixing chamber, and reading room within his building.  These spaces were to be represented as more transparent.  Replace Items component was used in order to edit the list made and remove these unwanted boxes.  Rem Koolhaas didn't just leave theses floating forms perfectly stacked, but staggered them to create a better aesthetic.  The Random component with move is able to generate different iterations of the floating boxes.

LunchBox becomes very useful when applying pre-determned sets of dimensions, such as modules or, in this case, programatic placement.  The driver for design is derived by numbers within an excel spreadsheet and is an asset in Functionalist architecture.

-Dylan Davis

SeattlePublicLibrary

In this lab, we looked at data contained within an Excel spreadsheet being the determinate of form. This can be useful in terms of setting limits to volumes, positions, or how far different elements are allowed to "roam" apart from each other. In Koolhaas' Seattle Public Library, the separate programmatic elements appear stacked and shifted, with an exterior skin anchoring at the corners, wrapping up the entire building. The excel file contained divisions, floor to floor heights, square footages, lengths, widths, & number of floors which are used to create volumes similar to the Library's.
The ExcelRead controller in Rhino seeks the data in the spreadsheet. After preparing the parameters with sliders which are based on the excel columns and row numerical data, the boxes can be created with the controls coming from the spreadsheet.
In order to created the proper roaming, which allows shifts of a controlled proportion, move commands were attached to randomized lists formed from widths and lengths in the spreadsheet.

Lunchbox gives us a shortcut when creating textures in GH/Rhino. Looking at the Seattle Public Library, we see a triad pattern across the facades. Lunchbox has an effect which looks similar to the Library's, by adding it to the mix, we have a realistic model.

Friday, September 20, 2013

Seattle Public Library Scripting Exercise

9-20-13

  Using the lunchbox plugin for grasshopper is an incredibly useful tool for editing models based on data.  Simply editing the Excel Spreadsheet where the data is based changes the model and provides a fairly fluid environment for experimentation.  By allowing excel to do the heavily lifting when it comes to the functions and equations, grasshopper becomes a more drawing element based scripting tool. 
  
  In this exercise, the data from the excel sheet was used to drive the dimensions of room volumes and the distance of the volume above the ground floor.  Outside of the spreadsheet, other buttons within grasshopper drove the X and Y jitter of the room volumes at their respective Z locations in the model.  The spreadsheet was set up so that there was a fixed square footage per volume, so that the width variable was not only tied to the length variable, but also the number of floors in the particular volume.  The user can control the number of floors in the particular volume as well as the width of the volume, leaving excel to calculate the length of the volume to allow for the square footage to match the predetermined value.  Height and spacing are also controlled by the user, since the user inputs how high the floor to floor height is.  Because this has no effect on the square footage, it merely changes the overall height of the building. 

  
  I see lunchbox as a means to take different data sets and apply it to a specific model rather than one that is based off of pre-determined or grasshopper constructed forms.  Here, the data drives the model, whereas in other situations, it may be curves or boundary representations that drive the way a model works.  Not that there is anything wrong with being a numbers driven model, it’s just a different method of solving an architectural problem.