# Honeybee Intermezzo 4: Parametric creation of Openings & Shades

Related Tutorials

An alternative way for applying openings and shadings will be to create them parametrically and not by assigning fixed surfaces from Rhino. This can be of significant importance for your script in case you want to later use it for an optimization run.

## Step 1: Select the HB face(s) for the application of Openings & Shades

Important to note:

Α. In this intermezzo, the HB faces which will be used as the base for the parametric creation of openings and shades will be extracted from the HB Room created through the: Honeybee Intermezzo 3: Alternative for Room creation (HB Room from Solid).

However, note you can also select some of the HB Wall faces as made in the: Honeybee Tutorial 1_Step 2A: Create the HB faces.

Β. In this intermezzo, the openings will be applied specifically only to the south wall of the room (assuming that the North is in the positive direction of Y axis.

Selecting the South face of the HB Room

To select the HB face that you want:

1. Create a Honeybee » Create » HB Deconstruct Object component and connect the ‘rooms’ result from the HB Room from Solid component to the ‘hb_obj’ input.

2. Use a Set » List » List item component and connect the ‘faces’ result of HB Deconstruct Object as a ‘List’ input.

Create a Params » Input » Number Slider to specify the index of the face that you want. For this tutorial, set the value of the Number Slider to 1.

(If you do not know the index, use a HB » Visualize » HB Visualize by Type component and connect the ‘Item’ from List Item command to the ‘hb_objs’ input to see which index corresponds to the face that you want every time.)

## Step 2: Parametric Creation of Openings

HB Apertures by Ratio & HB Extruded Border Shades

1. Create a Honeybee » Create » HB Apertures by Ratio component and connect the ‘Item’ result of the List item component to the ‘_hb_objs’ input.

2. Create a Params » Input » Number Slider to define the window to wall ratio (ratio of Apertures area to area of parent face). It should be a number ranging between 0 and 0.95.

In this example, we are going to assign a value of 0.45.

3. By moving your mouse above the different inputs, you will see which are the other parameters that you can also set for the creation of the windows. For this tutorial use Params » Input » Number Slider components and set:

- Window height(‘_win_height_’): 1.8

- Sill height(_sill_height_): 0.8.

Important to note:

a. If there is a clash between the different parameters which are set (e.g. the window to wall ratio is too large and cannot be achieved with the given sill & window height), some of the parameters will be automatically changed by the software. So, you should only define the ones that are more important to you each time.

b. The range of the number sliders which are used this time should be between reasonable values. This is because, if, afterwards, these sliders are used as genomes in an optimization run, they should be able, on the one hand, to cover a sufficient range but, on the other hand, to give valid results for each potential value. Otherwise, it will lead to a lot of errors in the optimization. (e.g. a potential range for the slider of the window height can be 0.6-2)

c. If an array of numbers is applied as input instead of a single number, the different values of the array will be applied to successive elements, starting from north and moving clockwise.

4. Use Params » Input » Panel to set the ‘operable_’ to True. This can be important mainly for your energy simulations.

5. You should add the respective wall thickness to each of the apertures created. Use a Honeybee » Create » HB Extruded Border Shades component and connect the ‘hb_objs’ result from HB Apertures by Ratio component to the ‘_hb_objs’ input.

6. Create a Params » Input » Number Slider to define the thickness of the wall. For this example, you should assign a value of 0.3 to it.

7. Create a Params » Input » Panel, write ‘true’ and assign it to the ‘indoor_’ input, so that the thickness is added towards the interior.

## Step 3: Parametric Creation of Shades

Creation of HB Louver Shades

In this example, we are going to apply shades to all the openings, but you can also select separately which opening you want the shades to be applied to.

1. Create a Honeybee » Create » HB Louver Shades component and connect the ‘hb_objs’ result from HB Apertures by Ratio to the ‘_hb_objs’ input.

2. Create a Params » Input » Number Slider to define the depth of the louvers. For this tutorial, you should set the value to 0.20. Remember that, your sliders should have reasonable min & max limits in case you want later to connect them as genomes in an optimization run.

3. By moving your mouse above the different inputs, you will see which are the other parameters that you can also set for the creation of the shades.

For this tutorial use 3 Params » Input » Number Slider components and set:

- Distance between the louvres (_dist_between_): 0.35

- Angle of louvres: 25 (degrees)

4. Use a Params » Input » Panel component to set the ‘vertical_’ to False (in order to have horizontal louvres).

## Step 4: Creating the parametric HB Model

The first phase refers to reconstructing the HB Room with the updated parametric components.

Composing the parametric version of the HB Room

1. Create a Honeybee » Create » HB Room and create a Params » Input » Panel component in order to give a characteristic name for the room you are creating. In our example, you can write "Room1_Parametric".

2. Now you need to connect all the HB faces that make up the new HB Room. Firstly, connect the ‘hb_objs’ from the HB Louver Shades to the ‘_faces’ input. In order to extract the rest of the faces from the HB Room from Solid (the ones that have remained unchanged) and connect them too:

Create a Set » Sequence » Cull index. Connect the ‘faces’ from the HB Deconstruct Object component to the ‘List’ input and connect the Number Slider indicating the index of the face you had selected to the ‘Indices’ input.

Add the ‘List’ result of the Cull index component to the ‘faces’ input of the HB Room component.

Important to note: In order to add more than one value in the same input, you should be pressing ‘Shift’ while adding the second one.

Creating the parametric version of the HB Model

3. Create a Honeybee » Create » HB Model and connect the ‘room’ result from the HB Room component to the corresponding input. Connect the ‘hb_objs’ from the HB Extruded Border Shades component to the ‘faces_’ input.

Now that the HB model is created, you can continue with the main flow of the tutorial. See how you can visualize & check what you have created in: