# Function: partBounds()

[**lifecycle-kit**](https://jonbogaty.com/lifecycle-kit/api/readme/index.md)

***

[lifecycle-kit](https://jonbogaty.com/lifecycle-kit/api/readme/index.md) / [forms](https://jonbogaty.com/lifecycle-kit/api/forms/readme/index.md) / partBounds


# Function: partBounds() {#function-partbounds}


> **partBounds**(`path`): `object`[]

Defined in: [forms/path.ts:380](https://github.com/jbcom/lifecycle-kit/blob/074e4e7b8038d3e2de9eb44c4b5b5aee0ef02b48/src/forms/path.ts#L380)

The bounding box of each part, in draw order.

The assemblage stage needs this to place a part in a depth band and to
know which parts overlap, since a part can only cast a shadow onto one it
actually covers. It is deliberately a composition of `groupByPart` and
`bounds` rather than a second solver — one exact implementation of the
Bézier extrema, used everywhere.


## Parameters {#parameters}



### path {#path}


[`Path`](https://jonbogaty.com/lifecycle-kit/api/forms/interfaces/path/index.md)


## Returns {#returns}


`object`[]
