1.2. COMPONENT UI FEATURES


While the DIVA components operate according to customary Grasshopper principles, they do feature two unusual interface characteristics worthy of special mention:

  1. Dropdown Parameters
  2. Hidden Parameters

Dropdown parameters are input parameters that can be set using a dropdown button to the right of the input name: They can also be used in a standard fashion by connecting a remote source to the input node: This allows one-click access to preset options without sacrificing the flexibility of algorithmic control. Data provided to dropdown parameters via remote source always take precedent over selections made from the dropdown menu. To make this apparent, a connected source will cause the selected dropdown item to update, and the menu itself to lock. To unlock the menu again, simply disconnect the source. As a general rule, dropdown parameters will respect unique, case-insensitive substrings as a means of identifying an item. So, in the example above, the input strings “My saved”, “saved”, or “my” (but not “view”) are also valid.

1.2.2. HIDDEN PARAMETERS

Daylight models and simulations are receptive to many input options, and are capable of producing many types of output data. In order to allow access to numerous parameters without cluttering the Grasshopper canvas, DIVA components feature removable inputs and outputs. To add or remove a parameter from a component, zoom in until the small ‘+’ or ‘-‘ buttons appear at the border of the component box:

Add / Remove Parameter Buttons (visible at 300% zoom)

  1. component in icon display mode
  2. component in label display mode

Clicking the add button reveals a list of hidden parameter items, which expose themselves as visible parameters when clicked. Clicking the remove button, likewise, sends a visible parameter back to the hidden menu. Note that, in many cases, it is also possible to set the values of hidden input parameters directly from the menu. For output parameters specifically, visibility is often more than just an aesthetic convenience. It can also determine what processes a component executes. The Visualization component pictured above, for example, will skip the process of creating a falsecolor image if the "FC" parameter is hidden, causing a reduction in runtime.