# 2.1: Karamba3D Entities

Grasshopper (GH) is an object oriented, visual scripting environment. It provides items like points, curves, surfaces, . . . for geometric computing. The full range of geometric items can be inspected in the subcategory **“Geometry”** of the toolbar section **“Params”**. Karamba3D adds seven entities for building structural models:

| Entity        | Typology                                                                                |
| ------------- | --------------------------------------------------------------------------------------- |
| Model         | contains all the information related to a structure                                     |
| Element       | can be a beam, truss, shell or spring                                                   |
| Element Set   | groups together elements in a given order, makes them accessible under a common name    |
| Joint         | deﬁnes the connectivity between neighboring elements                                    |
| Load          | external action which is imposed on the structure                                       |
| Cross-section | deﬁnes a structural element’s geometry in section                                       |
| Material      | provides information regarding the physical behavior of what a cross section is made of |
| Support       | deﬁnes how a structure connects to the ground.                                          |

Karamba3D objects behave like GH entities.

* They can be stored in containers (see the **“Params”** subcategory of the **“Karamba3D”** toolbar).&#x20;
* When converted into text by plugging them into a panel they provide textual output regarding their fundamental properties.

## Default Settings

In order to build a structural model not all of the above entities need to be present. Karamba3D assumes default settings for materials and cross sections:

* If no material is given, Karamba3D chooses steel (S235 according to EC3 with$$f\_{yk} =  23.5 kN/cm^2$$) for all cross sections.&#x20;
* For beams the default is a circular hollow cross sections (CHS) with an outer diameter of$$114.4mm$$and a wall thickness of $$4mm$$. The default thickness of shells amounts to $$10mm$$.

## Graphical User Interface

Some Karamba3D components come with graphical user interface components like radio-buttons, drop-down lists and sub-menus.&#x20;

Sliders on Karamba3D components have a preset number-range. Double-click on the knob to change the precision and range to your specific need.

In some cases the user can select between different options at a component input (e.g. the Load-Case at a result component, or the degrees of freedom at a support-component). To select these options via ValueList-components right-click on the Karamba3D-component and select "**Expand ValueLists**"  from the context menu or plug a ValueList into the corresponding input-plug. The selection of dynamic content that depends on the upstream -model (e.g. selection of load-cases) works only after the component executed at least once. So one needs to connect the mandatory input-plugs before expanding dynamic value-lists.

The ModelView-, BeamView- and ShellView-components provide a short-cut for selecting color-ranges for result display: Right-click on the components and select 'Colors' from the context menu.
