### 6 releases

0.5.0 | Feb 19, 2023 |
---|---|

0.1.4 | Jun 23, 2021 |

#**170** in Math

**279** downloads per month

Used in **2** crates

**MIT/Apache**

46KB

473 lines

# bezier-nd

A Bezier curve class supporting linear, quadratic and cubic Bezier curves, using an arbitrary point class.

Example uses would be for 2-dimensional Bezier curves whose
coordinates are

, or for 3-dimensional Bezier curves using
coordinates of `[``f64``;` `2``]`

.`[``f32``;` `3``]`

The Bezier curve supports bisection, and then splitting into straight
lines within a given

bound; iterators are provided to
automatically trace a Bezier as lines or points within such a
straightness, for rendering puroses.`straightness`

The Bezier type also supports rounding of corners and circular arc generation, utilizing a very accurate function for any angle of rounding up to 180 degrees, derived from a curve-fit from experimental data, rather than an explicit mathematical function for the control point generation (the standard analytical approach).

This crate is in beta; it is used in a small number of applications, and the functionality is mature; the API is stable, but may be enhanced.

## Usage

Add this to your

:`Cargo .toml`

`[``dependencies``]`
`bezier-nd ``=` `"`0.5`"`

## Releases

Release notes are available in RELEASES.md.

## License

Licensed under either of

at your option.

### Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

#### Dependencies

~1–1.6MB

~36K SLoC