> For the complete documentation index, see [llms.txt](https://wiki.mksdtech.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.mksdtech.com/beam/beam-for-rhinoceros/parameters.md).

# Parameters

Create and manage family parameters

A parameter stores information about a family, such as a size, a code or a flag. Every document starts with **Comments**, **Mark**, **Keynote**, **Type Mark** and **Workset**. You can add as many custom parameters as you need.

## Edit parameter values

Select objects that belong to a family, or block instances. Their parameters appear in **Family Parameters** on the [panel](/beam/beam-for-rhinoceros/using-rhino-beam.md#family-parameters).

<figure><img src="https://1008084047-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M20iL6J8Vf1nWgor7JL%2Fuploads%2Fgit-blob-5bd68ae04e8667e8396afac3f53f21d09be10861%2Fmock-panel.png?alt=media" alt="Family Parameters in the BEAM panel" width="293"><figcaption></figcaption></figure>

* **Type** shows type parameters. A type parameter has one value for the whole family.
* **Instance** shows instance parameters. An instance parameter has its own value on each block instance, curve or point.

Type a value and press **Enter**. If several objects are selected, the value goes to all of them.

To see and edit many values at once, use [Schedules](/beam/beam-for-rhinoceros/schedules.md).

## Manage custom parameters

Click **P** on the panel to open the parameters list.

<figure><img src="https://1008084047-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M20iL6J8Vf1nWgor7JL%2Fuploads%2Fgit-blob-e9d5bd2f7156727f5d0971e7a1f80bd6a882c0bf%2Fmock-parameters.png?alt=media" alt="Parameters dialog" width="580"><figcaption></figcaption></figure>

| Button            | What it does                                               |
| ----------------- | ---------------------------------------------------------- |
| **Add**           | Create a parameter                                         |
| **Edit**          | Change the selected parameter                              |
| **Remove**        | Delete the selected parameters from the document           |
| **Property Sets** | Create, rename and delete property sets                    |
| **Import JSON**   | Load parameters from a BEAM `.json` file                   |
| **Import Shared** | Load parameters from a Revit shared parameters `.txt` file |
| **Export**        | Save all parameters to a `.json` file                      |

Click **OK** to apply your changes, or **Cancel** to discard them.

### Add or edit a parameter

<figure><img src="https://1008084047-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M20iL6J8Vf1nWgor7JL%2Fuploads%2Fgit-blob-d35b2ea739b03aabaacc187c64fb6cd98b0f38c6%2Fmock-add-parameter.png?alt=media" alt="Add parameter dialog" width="330"><figcaption></figcaption></figure>

| Field                   | What to enter                                                 |
| ----------------------- | ------------------------------------------------------------- |
| **Name**                | The parameter name. It should match the Revit parameter name. |
| **Instance** / **Type** | Where the value is stored. See above.                         |
| **Type**                | The data type. See the table below.                           |
| **Property Set**        | The group the parameter belongs to.                           |
| **Categories**          | The family categories that get this parameter.                |

| Type        | Stores                             | Example     |
| ----------- | ---------------------------------- | ----------- |
| **Text**    | Words, codes or notes              | `FP-01`     |
| **Integer** | Whole numbers                      | `3`         |
| **Number**  | Decimal numbers                    | `2.5`       |
| **Length**  | A length in model units            | `1200 mm`   |
| **Area**    | An area in model units             | `4.2 m²`    |
| **Volume**  | A volume in model units            | `0.35 m³`   |
| **Angle**   | An angle                           | `45°`       |
| **YesNo**   | True or false, shown as a checkbox | ☑           |
| **Url**     | A web link                         | `https://…` |

BEAM checks numeric values as you type them. Length, area and volume values show their units in the panel.

### Property sets

A property set is a named group of parameters. The panel shows one collapsible group per property set. In IFC export, each property set becomes an IFC property set.

Click **Property Sets** to add, edit or remove sets. Use the **Expand All** and **Collapse All** arrow buttons on the panel to open or close every group.

## Share parameters between projects

{% tabs %}
{% tab title="BEAM JSON" %}
A `.json` file stores a full snapshot of your parameters: names, types, instance or type, property sets and categories.

* Click **Export** to save the current parameters.
* Click **Import JSON** in another document to load them.

Use it to keep a standard parameter set for your office.
{% endtab %}

{% tab title="Revit shared parameters" %}
A shared parameters file is the `.txt` file Revit uses to keep parameter definitions consistent across projects.

1. Click **Import Shared** and pick the `.txt` file.
2. Choose a **Group** to list its parameters.
3. Add the parameters you want to the import list.
4. For each one, choose **Instance** or **Type**.
5. Click **OK**.

<figure><img src="https://1008084047-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M20iL6J8Vf1nWgor7JL%2Fuploads%2Fgit-blob-124383fc3277bb8a272fd7910a740f7c1f01410d%2Fmock-import-shared.png?alt=media" alt="Import shared parameters dialog" width="640"><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

## Parameters in Revit

{% hint style="warning" %}
A Revit parameter must already exist to receive a value from Rhino. Create the project or shared parameters in Revit first, using the same names.
{% endhint %}

{% hint style="warning" %}
Revit fills a parameter only if the value matches its type. A text value sent to a length parameter stays empty, with no warning. Check your data after import.
{% endhint %}
