This is a major release with breaking changes. The codebase has been
written from scratch in Rust and the Python bindings have been updated
to reflect the changes in the underlying implementation.
Changed
- The `bc_types` argument of `CatmullRom` class has been renamed to
`bc_type` and custom boundary conditions have been removed. The
available boundary conditions are `'natural'`, `'closed'`, and
`'clamped'`.
- The `smooth_linstring` function has been renamed to `smooth_linestrings`.
This function now handles a list of `LineString` geometries instead of a
single geometry. The code runs in parallel in Rust and is significantly
faster than the previous implementation. If a single `LineString` geometry is passed a single `LineString` geometry is returned, otherwise a list of `LineString` geometries is returned.
- The `compute_tangents` has been renamed to `linestrings_tangent_angles`.
This function now handles a list of `LineString` geometries and returns
the tangent angles at each vertex of the input geometries. The code runs
in parallel in Rust and is significantly faster than the previous. If a single `LineString` geometry is passed a single array of tangent angles is returned, otherwise a list of arrays is returned.