# Generic solid

> Component kind `generic-solid` (category `static`, DSL name `genericSolid`, API v1)

Neutral rectangular block used as a bounding-box stand-in for parts that do not yet have a dedicated kind (round bar, channel, custom profiles). Sized width (X) × height (Y) × length (Z), centered on the local origin.

## Parameters

- **`width`** — Bounding-box extent along local X (mm).
- **`height`** — Bounding-box extent along local Y (mm).
- **`length`** — Bounding-box extent along local Z (mm).
- **`density`** — Material density (kg/m³) used for the weight estimate. Default 7850 (steel).

## Parameters schema

| Parameter | Type | Default | Constraints |
| --- | --- | --- | --- |
| `width` | Number | 50 | min: 1 |
| `height` | Number | 50 | min: 1 |
| `length` | Number | 100 | min: 1 |
| `density` | Number | 7850 | min: 1 |
| `color` | String | — |  |

## Ports

| Port | Type | Description |
| --- | --- | --- |
| `body` | `rigid` | Rigid structural port. Weld or rest other parts against it; carries no motion. |

## Example

```
statics.genericSolid({
  id: 'bar_1', width: 20, height: 20, length: 600,
  transform: { position: [100, 300, 100], rotation: [0, 0, 0] },
});
```
