Adeleh NEJATI
Spring 2012
Spring 2012
Location: Seattle, Washington, USA
Key Personnel: Rem Koolhaas and Joshua Prince-Ramus (Partner-in-Charge), with Mark von Hof-Zogrotzki, Natasha Sandmeier, Meghan Corwin, Bjarke Ingels, Carol Patterson
Consultants: Arup, Bruce Mau Design, Davis Langdon, Dewhurst Macfarlane, Front, HKA, Hoffman Construction, Inside/Oustide, Jones & Jones, Kugler Tillotson, Magnusson Klemencic, McGuire, Michael Yantis, Pielow Fair, Quinze & Milan, Seele
Client: Seattle Public Library
Program: Central library for Seattle’s 28-branch library system, including 33,700 sqm of hq, reading room, book spiral, mixing chamber, meeting platform, living room, staff floor, children’s collection, and auditorium, and 4,600 sqm of parking.
Project year: 1999-2004
Constructed Area: 38,300 sqm
Budget: US $169.2 M
Project 2: Accessing BIM Data for Creative Design and Application
The first step was creating the material for curtain panels' frame (My Material):
The second step after obtaining the family ID (in the project's file) was specifying the curtain panel IDs in different part of facades:
Then we define a function for thickness and color using provided IDs, family document and material:
The function “SetThicknessColor” will be implemented in three different steps for every single ID:
After loading the Project2.dll into the Revit project (using add-in manager) and running CurtainPanelByPatternCommand, the result showed up:
First, six horizontal levels in different elevations were defined with a parametric height value between each two of them. Then the profiles were created in each level using reference lines; each profile was given parametric dimensions, width and length. Regarding the original model, each two of these profiles shares similar parametric dimensions. The next step was defining the slope of façade connecting three different parts of the building. This slope was controlled using distance parameter (both in X and Y axis) between different profiles in diverse levels. At the end, by using loft as one of the tools for making forms, the general building model was shaped out of the parametric profiles in different levels. After creating the general form of building, some details were added through adding vertical reference plan and profiles, connecting them to the whole building by using the “Create Form (loft)”, and finally polishing them by adding edge and etc. Eventually, the Seattle Public Library building was created from seven different masses that can nicely been controlled parametrically.
Key Personnel: Rem Koolhaas and Joshua Prince-Ramus (Partner-in-Charge), with Mark von Hof-Zogrotzki, Natasha Sandmeier, Meghan Corwin, Bjarke Ingels, Carol Patterson
Consultants: Arup, Bruce Mau Design, Davis Langdon, Dewhurst Macfarlane, Front, HKA, Hoffman Construction, Inside/Oustide, Jones & Jones, Kugler Tillotson, Magnusson Klemencic, McGuire, Michael Yantis, Pielow Fair, Quinze & Milan, Seele
Client: Seattle Public Library
Program: Central library for Seattle’s 28-branch library system, including 33,700 sqm of hq, reading room, book spiral, mixing chamber, meeting platform, living room, staff floor, children’s collection, and auditorium, and 4,600 sqm of parking.
Project year: 1999-2004
Constructed Area: 38,300 sqm
Budget: US $169.2 M
Project 2: Accessing BIM Data for Creative Design and Application
For the second project, I implemented API programming for manipulating the Seattle
library Building façades in order to create more openness and transparency for southern
façades and less for other ones. Using CSharp programming, I create 2 series of curtain panels with random sizes in different part of building and also random
gray color for their framing.
The first step was creating the material for curtain panels' frame (My Material):
//Create the material
ElementId
materialId = Material.Create(familyDoc, "My Material" + m); // adding random m to avoid same names used when running
the program multiple times.
material = familyDoc.get_Element(materialId) as Material;
The second step after obtaining the family ID (in the project's file) was specifying the curtain panel IDs in different part of facades:
IDS = new int[] { 11370, 11371, 11375, 11376, 11378… };
IDS = new int[] { 20098, 20100, 20101, 20104, 20105… };
Then we define a function for thickness and color using provided IDs, family document and material:
SetThicknessColor(IDS, familyDoc, material);
The function “SetThicknessColor” will be implemented in three different steps for every single ID:
Region 1: Getting objects which are
curtain panels
Region 2: Obtaining instance parameters
of panels which are "thickness" and "Frame material"
Region 3: Calculating new values for
these parameters
- Finding a random thickness from (1, 3) for southern façades and (2,4) for northern facades
- Finding a random number in the range of (50, 150) and giving it to red, green, and blue elements of the color which create random color with gray tone
Region 4: Creating
parameters using new values
#region 1 Get objects
// use id to get the curtain panel
instance
//ElementId id;
id = new ElementId(IDS[n]); //ID
value of the panel family instance, obtained from the Revit model
FamilyInstance
panelInstance;
panelInstance = document.get_Element(id) as FamilyInstance;
//Get the element by ID and cast it to FamilyInstance
#endregion
#region 2 Get instance
parameters of the objects
Parameter
panelThicknessParam = panelInstance.get_Parameter("Thickness");
Parameter
panelMaterialParam = panelInstance.get_Parameter("Material");
#endregion
#region 3 Calculate new
values
double thickness =
random.Next(1, 3);
byte red = (byte)random.Next(50, 150);
byte green = red;
byte blue = red;
Material
myMaterial = material.Duplicate("My Material
" + m + "-" + n);
myMaterial.Color = new
Color(red, green, blue);
#endregion
#region 4 Set parameters of
objects using new values
panelThicknessParam.Set(thickness);
panelMaterialParam.Set(myMaterial.Id);
#endregion
After loading the Project2.dll into the Revit project (using add-in manager) and running CurtainPanelByPatternCommand, the result showed up:
Project 1: Parametric BIM
Parametric Mass
Modeling
The Seattle
Public Library building has a complex architectural design; therefore,
implementing Revit and parametric BIM is one of the best ways of modeling this
building more efficiently and precisely. Although there is not a single
equation that can be used for the whole modeling process but in each stages of
creating the volume, one can parameterize different parts of the form in terms
of their width, length, height and adjacency related to other parts of the
whole building.
The Seattle
Public Library building is created from five different parts that can come
together as one single volume. Each part can be defined with two different
profiles on top and bottom and can be created using loft as the relevant way of
making forms. Parametrically, we can control the width and length of each
profile by a simple equation; also we can parameterize the height between the
profiles in the process of its mass modeling. Another point in creating this
form is the position of different parts of the form on top of each other
regarding X and Y axis; the position of each profile related to its top/bottom
profiles also can parametrically be controlled in order to have a flexible building
mass model.
First, six horizontal levels in different elevations were defined with a parametric height value between each two of them. Then the profiles were created in each level using reference lines; each profile was given parametric dimensions, width and length. Regarding the original model, each two of these profiles shares similar parametric dimensions. The next step was defining the slope of façade connecting three different parts of the building. This slope was controlled using distance parameter (both in X and Y axis) between different profiles in diverse levels. At the end, by using loft as one of the tools for making forms, the general building model was shaped out of the parametric profiles in different levels. After creating the general form of building, some details were added through adding vertical reference plan and profiles, connecting them to the whole building by using the “Create Form (loft)”, and finally polishing them by adding edge and etc. Eventually, the Seattle Public Library building was created from seven different masses that can nicely been controlled parametrically.
Creating Parametric Façade
The Seattle
Public Library building façade is built using curtain wall system with a
consistent pattern throughout the whole building. The first picture below shows
the pattern that I created using the rhomboid tile pattern grid with a
rectangular frame and a glass panel in side; the material of the panel is
parametric so we can control it after loading into other families or projects.
Generally, the façade was created by dividing the surface of parametric mass
model, applying the designed pattern to it and controlling the density and size
respectively.