# Path bending

Use `arcBendTransform` or `pathBendTransform` with `transformPath`. See the
[composable transforms reference](/reference/functions/path-transforms/) for signatures and examples.

`baseline` is `top`, `center` (default), `bottom`, or an absolute source Y value.
`align` is `start` (default), `center`, or `end`. `fit` is `none` (default) or
`stretch`. `offset` moves along the guide; `normalOffset` moves along its normal.
Both default to zero. Positive normal displacement is to the right of traversal.

`overflow` is `error` (default), `extend` (continue the endpoint tangent), or
`wrap` (closed guides only). Circular arc angles use radians and a nonzero signed
sweep of at most one revolution. Path guides must be one smooth directed contour;
corners and cusps are rejected. Unlike envelope guides, closed bend guides support
wrapping. Source-frame height may be zero for a baseline-only bend.

## API details from source

<span id="api-PathBendArc"></span>

### PathBendArc

Circular guide geometry used when bending a path along an arc.

```ts
interface PathBendArc
```

Related API: [PathBendArc](/reference/functions/path-bending/).

#### See also

[ArcBendTransformOptions](/reference/functions/path-transforms/)

[View source — packages/core/src/lib/geometry/path-bending.ts:15](/source/packages/core/src/lib/geometry/path-bending-ts/#L15)

#### Properties and methods

<span id="api-PathBendArc-cx"></span>
<details>
<summary>cx</summary>


```ts
readonly cx: number
```

Horizontal coordinate of the center. See PathBendArc.

[View source — packages/core/src/lib/geometry/path-bending.ts:17](/source/packages/core/src/lib/geometry/path-bending-ts/#L17)

</details>

<span id="api-PathBendArc-cy"></span>
<details>
<summary>cy</summary>


```ts
readonly cy: number
```

Vertical coordinate of the center. See PathBendArc.

[View source — packages/core/src/lib/geometry/path-bending.ts:19](/source/packages/core/src/lib/geometry/path-bending-ts/#L19)

</details>

<span id="api-PathBendArc-radius"></span>
<details>
<summary>radius</summary>


```ts
readonly radius: number
```

Radius in the coordinate system of this geometry or effect. See PathBendArc.

[View source — packages/core/src/lib/geometry/path-bending.ts:21](/source/packages/core/src/lib/geometry/path-bending-ts/#L21)

</details>

<span id="api-PathBendArc-startAngle"></span>
<details>
<summary>startAngle</summary>


```ts
readonly startAngle: number
```

Angle at which the arc or slice begins. See PathBendArc.

[View source — packages/core/src/lib/geometry/path-bending.ts:23](/source/packages/core/src/lib/geometry/path-bending-ts/#L23)

</details>

<span id="api-PathBendArc-sweep"></span>
<details>
<summary>sweep</summary>


```ts
readonly sweep: number
```

Angular extent of the arc. See PathBendArc.

[View source — packages/core/src/lib/geometry/path-bending.ts:25](/source/packages/core/src/lib/geometry/path-bending-ts/#L25)

</details>

<span id="api-PathBendAlign"></span>

### PathBendAlign

Placement of the source along the beginning, center, or end of a bending guide.

```ts
type PathBendAlign = 'start' | 'center' | 'end'
```

Related API: [PathBendAlign](/reference/functions/path-bending/).

#### See also

[BendTransformOptions](/reference/functions/path-transforms/)

[View source — packages/core/src/lib/geometry/path-bending.ts:32](/source/packages/core/src/lib/geometry/path-bending-ts/#L32)

<span id="api-PathBendBaseline"></span>

### PathBendBaseline

The source baseline used for bending: an edge, center, or explicit coordinate.

```ts
type PathBendBaseline = 'center' | 'top' | 'bottom' | number
```

Related API: [PathBendBaseline](/reference/functions/path-bending/).

#### See also

[BendTransformOptions](/reference/functions/path-transforms/)

[View source — packages/core/src/lib/geometry/path-bending.ts:38](/source/packages/core/src/lib/geometry/path-bending-ts/#L38)

<span id="api-PathBendFit"></span>

### PathBendFit

Whether bending preserves source length or stretches it to the guide.

```ts
type PathBendFit = 'none' | 'stretch'
```

Related API: [PathBendFit](/reference/functions/path-bending/).

#### See also

[BendTransformOptions](/reference/functions/path-transforms/)

[View source — packages/core/src/lib/geometry/path-bending.ts:44](/source/packages/core/src/lib/geometry/path-bending-ts/#L44)

<span id="api-PathBendOverflow"></span>

### PathBendOverflow

Policy for source geometry extending beyond a bending guide.

```ts
type PathBendOverflow = 'error' | 'extend' | 'wrap'
```

Related API: [PathBendOverflow](/reference/functions/path-bending/).

#### See also

[BendTransformOptions](/reference/functions/path-transforms/)

[View source — packages/core/src/lib/geometry/path-bending.ts:50](/source/packages/core/src/lib/geometry/path-bending-ts/#L50)

## Implementation guidance for agents

Read the [Drawing, layout, and effects companion](/agents/topics/layout/) for ownership, adaptation, failure modes, and verification. [Agent start](/agents/) provides the version-selection workflow.

## Complete minimal examples

- [Arc and path bending](/minimal-examples/paths/bends/): Bend geometry around an arc and along a guide with explicit placement options. [Plain source](/minimal/paths/bends.ts)
## Documentation version

Documentation built with @pibbl/core 0.0.2, revision 272a94a. ALPHA — NOT FOR PRODUCTION USE.
