> For the complete documentation index, see [llms.txt](https://docs.opencutlist.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.opencutlist.org/features/applying-materials.md).

# Materials

Material applied to components defines how a part will be handled by OpenCutList.

## Applying Material

To distinguish between different wood species and types of materials, a **Material** must be applied to the components. A texture representing the actual material can be used, but this remains optional, as plain colors (including white) are sufficient.

{% hint style="info" %}
If you have already defined a SketchUp material and maybe even applied it to your components, the material will automatically appear in the **Materials** section of OpenCutList, although it will not have any specific configuration.
{% endhint %}

{% hint style="success" %}
**OpenCutList** will allow you to add a material and configure it directly, without having to first create it in SketchUp and then configure it.
{% endhint %}

## Material Types

An **OpenCutList** material is a SketchUp material with a few additional attributes. **OpenCutList** defines the following seven types of materials:

1. [**Solid Wood**](#solid-wood) is rough lumber, usually available in specific thicknesses, but not in standardized lengths or widths. Because it may have defects (knots, cracks, discoloration, …), it is up to the woodworker to carefully choose the location of the parts inside such a material.
2. [**Sheet Goods**](#sheet-goods) is lumber coming in sheets (MDF, Plywood, OSB, …). Such a material is not meant to be planed, just cut. It is a fairly homogeneous material where grain direction may (Plywood, OSB) or may not be important (MDF).
3. [**Board**](#board) (formerly *Dimensional*) is lumber coming in standardized cross sections and standardized lengths. Typically, such a material is only cut to length. Consider it as carpentry/construction lumber. If we were to use this wood for cheap furniture, we would make it **Solid Wood**, since we would probably rip and/or plane it first.
4. [**Edge Banding**](#edge-banding) is a thin strip of material applied to the edges of parts made from less valuable core material like MDF or Plywood, to increase the durability of exposed edges and to make them look nicer.
5. [**Veneer**](#veneer) is a thin slice, in general of valuable wood, that is applied onto panels to obtain a nicer looking surface.
6. [**Hardware**](#hardware) is an accessory like a hinge, a drawer slide or pull, or any other non-wooden part.
7. [**Machining**](#machining) is not a material you buy: it marks a volume **removed** from a part (a hole, a groove, a pocket, a rebate, …).

{% hint style="info" %}
**Edge Banding**, **Veneer** and **Machining** are *virtual* materials: they are never the material of a part. Edge Banding and Veneer are assigned to the edges and faces of a part, and a Machining is painted on a geometry nested *inside* a part.
{% endhint %}

You can apply a material to a component definition, by opening the component and applying the material to all its faces, or just by applying material to the selected instance. In the latter case, components with the same definition may have different material applied to them.

{% hint style="success" %}
If you apply material to a group of components, **OpenCutList** will consider that all components have the specified material, if they do not already have a material. If you later ungroup the components, they will simply retain the material that was applied to the group. In this respect, **OpenCutList** behaves like SketchUp.

This behavior will be deactivated if you unselect "Smart Assignment..." in [Options for Parts](/features/parts/options.md#smart-assignment-of-material).
{% endhint %}

{% hint style="warning" %}
If you apply a material to only specific faces of a component, **OpenCutList** will consider this to be the material of the component (but only if "Smart Assignment..." has been selected in [Options for Parts](/features/parts/options.md#smart-assignment-of-material)).
{% endhint %}

## Configuring Materials

Materials must be configured to help **OpenCutList** produce the **Parts List**. Each material type (as defined above) has its own specific set of configuration options. A material has a **name**, a **color**, a **type** and optionally a **description** and a **URL** (a supplier page, for example). The name can describe a whole set of material. MDF, for instance, which is available in multiple thicknesses and sheet sizes, can be configured as a single material.

The configuration options are spread over the following tabs of the **Properties of Material** window. Only the tabs and fields relevant to the selected type are shown.

| Tab                    | Content                                                                     |
| ---------------------- | --------------------------------------------------------------------------- |
| **Formats**            | Thickness, standard thicknesses, sections, lengths, widths and sizes, grain |
| **Attributes**         | Density, price and cutting price                                            |
| **Cutting Parameters** | Length, width and thickness oversizes, reduction by edge banding            |
| **Estimation Options** | Volume used by the estimate, multiplying coefficient                        |
| **Export Options**     | 2D export of machinings (**Machining** type only)                           |

{% hint style="info" %}
All dimensions without a unit are interpreted in the model's unit. Fields accepting multiple values (standard thicknesses, sizes, …) are entered as a list.
{% endhint %}

{% hint style="success" %}
Once configured, the material can be exported to a `*.skm` file or a SketchUp collection, see [Saving and Importing Material](#saving-and-importing-material). The configured values can also be saved as the default preset for the material type, with the preset button at the top right of the tabs.
{% endhint %}

### Solid Wood

Solid wood can be rough lumber or any lumber that will be ripped and planed to thickness.

* **Standard thicknesses** (multiple values possible), in **raw** dimensions (real, not nominal). The part thickness is rounded up to the nearest standard thickness.
* a **length**, a **width** and a **thickness oversize** to account for warped, irregular boards.
* a **multiplying coefficient** (Estimation Options) applied to the raw volume, to account for the waste inherent in rough lumber.

### Sheet Goods

Sheet goods like MDF, Plywood and OSB are available in various sizes and thicknesses. A single material can describe all variants.

* **Standard thicknesses** (multiple values possible) in real dimension (not nominal).
* **Standard sizes of the sheets** (multiple values possible) in real dimensions (not nominal). The first dimension is length *by convention*, the second dimension is width.
* presence or absence of a **grain direction**. Grain direction always runs along the length, i.e. the first dimension of the panel.
* a **length** and a **width oversize** applied to each part to be placed onto a panel.

### Board

Board (formerly *Dimensional*) is often used in construction.

* **Standard cross sections** (width x thickness, multiple values possible).
* **Standard lengths** (multiple values possible).
* a **length oversize** to account for rough dimensions.

### Edge Banding

* a **thickness**.
* **Standard lengths** (rolls, multiple values possible) and **standard widths** (multiple values possible).
* a **length** and a **width oversize**.
* **Reduce Dimensions**: applies to the part the edge banding is applied to. When **No Reduction** is selected, the part will not be trimmed. If **Reduce by Edge Banding Thickness** is selected, the cutting dimensions of the part will be reduced by the thickness of the edge banding.

### Veneer

* a **thickness**.
* **Standard sizes** of the sheets (multiple values possible).
* presence or absence of a **grain direction**.
* a **length** and a **width oversize**.

Veneer can only be applied to the front and back faces of a **Sheet Goods** part, see [Edit Part](/features/parts/parts-list/edit-part.md).

### Hardware

**Hardware** is handled quite differently from the other types of material, because there are no parameters to configure here. For each type of hardware you will use, add a distinct material. For example, *dominos* to use Dominos. Now you can assign this material to any component and **OpenCutList** will consider this component to be a Domino and list all components of this type in a same group. Edit the properties of each part to add **Packaging**, **Price** and **Weight** if you want to use the **Estimate** feature.

By drawing simple dowels and assigning the material *dominos*, OpenCutList will provide you with the total number of Dominos needed for the project. If you buy your Dominos in packs of 1000, but you only need 80, OpenCutList will inform you that 920 will not be used.

### Machining

A **Machining** material marks the volume removed from a part: a hole, a groove, a pocket, a rebate, a counterbore, … Draw this volume as a group (or a component) **inside** the part's component, and paint it with a material of type **Machining**. It is good practice to use one material per kind of operation (*Drilling*, *Pocket*, *Engraving*, …), each with its own color.

A machining is not a part:

* it is not listed in the **Parts List**, and it is ignored when computing the dimensions of the part that contains it, even when it overflows the part;
* the part keeps its own material.

Machinings are taken into account by the 2D projections of the parts: [cutting diagram](/features/parts/parts-list/cutting-diagrams.md) previews and 2D exports (DXF, SVG) of the cutting diagrams and of the [Smart Export Tool](/features/smart-export-tool.md). Their faces give the depth of each operation, measured from the face of the part they are dug into.

{% hint style="info" %}
Machinings are also created automatically by **OpenCutList**: the **Smart Join Tool** paints the drillings of its connectors and hardware with a Machining material (option **Machining**), and the BXF import does the same with the machinings it reads.
{% endhint %}

The **Export Options** tab is the only one available for this type. It defines how the machinings of the material are exported in 2D:

* **Machining Geometries**
  * **Carved into the part** (default): the machining geometries are subtracted from the part's shape and merged with its depth layers, as if the solid operation were performed in the part's geometry. Overflowing machining geometries are truncated.
  * **Separated on their own layers**: the part keeps its original shape. Each machining geometry is exported as-is, without merging with the others, on a `MACHININGS` layer per depth, named after the material. Useful when the machine (or the CAM software) must receive each operation separately.
* **Colors for export** (only when machinings are separated)
  * **Automatic** (default): machinings take on the colors of what they cut out of the part: the colors of the holes if they are through holes, or the colors of the depths otherwise. Useful for machines that deduce the type of cut from the colors.
  * **Material Color**: the outline of the machinings takes on the color of this material, without fill.

### Common Attributes

The **Attributes** and **Estimation Options** tabs are shared by Solid Wood, Sheet Goods, Board, Edge Banding and Veneer. Their values are used in [Estimate](/features/parts/report.md) to compute the weight and cost of the raw material needed for a project.

* **Density** (Solid Wood, Sheet Goods, Board, Edge Banding, Veneer).
* **Price** (Solid Wood, Sheet Goods, Board, Edge Banding, Veneer).
* **Cutting Price** (Sheet Goods, Board, Edge Banding, Veneer). Only straight cuts are taken into account.

Density and price can be given for all sizes at once, and overridden for each standard size of the material.

**Used Volume** (Estimation Options; Sheet Goods, Board, Edge Banding, Veneer) defines the volume used to estimate the weight and the cost:

* **Effective volume**: the sum of the volumes of the parts, i.e. their bounding box including oversizes.
* **Volume of raw material required**: the sum of the volumes of the panels, sheets, boards or edge bandings needed once the [cutting diagram](/features/parts/parts-list/cutting-diagrams.md) is computed.

## Adding and Configuring Textures

Textures can be added from SketchUp or directly from **OpenCutList**. The tab Texture of the properties of a material lets you select a texture picture.

{% hint style="info" %}
This feature was introduced in version 5.0.0. Before, textures had to be added using SketchUp.
{% endhint %}

Textures can be rotated in 90° steps and their width and height can be defined (locked or not to the ratio of the picture). The texture of a material can also be exported to a picture file.

<figure><img src="https://2764382921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MUSHuV5bThAGZxy7OHb-1972196547%2Fuploads%2FSzty3bFUixyVRpn2MEWl%2FMaterials%20-%20Texture.png?alt=media&amp;token=b3ec5ea4-9cae-43fd-96c6-73fd71b4dcad" alt="" width="563"><figcaption><p>Textures in OpenCutList</p></figcaption></figure>

## Saving and Importing Material

You may save the configured material for use in future projects. **OpenCutList** lets you export each material to its own file with extension **.skm**. So, you can use the same material (including all parameters associated with it) in another model.

{% hint style="info" %}
**OpenCutList** will save the material in a subfolder of your profile, so that it can be reused in another project or shared with other users.
{% endhint %}

{% hint style="warning" %}
If you import a material with the same name as a material already present in the folder, the import will be silently ignored (which is SketchUp's behavior).
{% endhint %}

## Duplicating Material

To duplicate a given material (including its **OpenCutList** attributes), open the **Properties of Material** window and click on **Duplicate**. Enter a new name for the copy. If you don't change the name, a new unique name based on the old name will be given.

## Removing Material

You may directly delete a material from **OpenCutList**.

{% hint style="warning" %}
Removing a material from the **OpenCutList** Materials tab will also remove it from the SketchUp model and apply the default material to all parts which had the deleted material.
{% endhint %}

## Purging Unused Material

You may also purge unused material similarly to `Window -> Model Info -> Statistics`. However since the extension relies on a SketchUp function, if an unused material is currently selected in the material tray, **OpenCutList** cannot delete it.
