Releases: cheginit/catsmoothing
Releases · cheginit/catsmoothing
v0.2.2
Release Notes
Changed
- Improved the code performance by creating a global thread pool that is
shared across all functions that run in parallel. This avoids creating
a new thread pool for each function call, which was causing a performance
overhead. - Improved the performance of the
gaussian_smoothing
function by using
a more efficient algorithm to compute the convolution of the input
data with a Gaussian kernel.
v0.2.1
Release Notes
Fixed
- Fix the
smooth_linestrings
function to correctly handle returning
multipleLineString
geometries when a list ofLineString
geometries
is passed as input.
v0.2.0
Release Notes
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 ofCatmullRom
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 tosmooth_linestrings
.
This function now handles a list ofLineString
geometries instead of a
single geometry. The code runs in parallel in Rust and is significantly
faster than the previous implementation. If a singleLineString
geometry is passed a singleLineString
geometry is returned, otherwise a list ofLineString
geometries is returned. - The
compute_tangents
has been renamed tolinestrings_tangent_angles
.
This function now handles a list ofLineString
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 singleLineString
geometry is passed a single array of tangent angles is returned, otherwise a list of arrays is returned.
v0.1.1
Release Notes
Added
- Add a new boundary condition for the
CatmullRom
class called'clamped'
,
which allows anchoring the first and last points of the curve to the first
and last control points. This is particularly useful for smoothing
MultiLineString
geometries where the first and last points of each
line segment must remain connected to the previous and next line segment.
Changed
- Freeze attributes of
CatmullRom
since they are not supposed to be changed,
once the class is instantiated. If needed, a new instance should be created.
v0.1.0
Release Notes
[0.1.0] - 2024-08-31
- Initial release.