## ShapeBuilder / Cylinder

**Cylindrical vein** — forms a vertical cylinder that can taper/widen upward.

| Field | Type | Required | Description                                                                                                                                                      |
|-------|------|----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `type` | string | ✅ Yes | **`Cylinder`**                                                                                                                                                   |
| `baseRadius` | [RandomFloat](../RandomInt.md) | ✅ Yes | Sets the primary horizontal radius of the cylinder at its midpoint; defines how wide the ore vein appears when viewed from above.                                |
| `bottomScale` | [RandomFloat](../RandomInt.md) | ❌ No | Scales the radius at the bottom of the cylinder relative to the baseRadius; useful for creating asymmetric, inverted, or irregular tube shapes.       |
| `topScale` | [RandomFloat](../RandomInt.md) | ❌ No | Scales the radius at the top of the cylinder relative to the baseRadius; values >1 create a funnel shape, <1 create a narrowing upward taper.                    |
| `depth` | [RandomInt](../RandomInt.md) | ✅ Yes | Defines the cylinder's vertical height (Y‑axis extent)                         |
| `radialNoise` | number | ❌ No | Creates wavy, irregular edges along the cylinder's horizontal cross-section, making the outline look naturally eroded or organic rather than perfectly circular. |
| `heightNoise` | number | ❌ No | Adds vertical undulations to the cylinder's top and bottom surfaces, simulating layered deposition, erosion, or uneven growth along the height.                  |
| `bendNoise` | number | ❌ No | Gradually curves and bends the cylinder's central axis in 3D space, creating winding, meandering veins instead of straight vertical/horizontal tunnels.          |
| `filters` | [VoxelFilter](../VoxelFilter.md) | ❌ No |                                                                                                                                                                  |

**Example:**
```json
{
  "type": "Cylinder",
  "bottomRadius": {
    "type": "AreaBalanced",
    "min": 3,
    "max": 8
  },
  "topRadius": {
    "type": "Const",
    "value": 5
  },
  "depth": {
    "type": "Uniform", 
    "min": 5,
    "max": 15
  },
  "densityFalloff": {"type": "Linear" },
  "horizontalNoise": 0.2,
  "verticalNoise": 0.1
}
// Cylinder with radius 3-8 at bottom, 5 at top, height 5-15 blocks
// Density decreases linearly from center to edge
// Minor irregularities on sides and top/bottom