Contour polygon creation in Rust (using marching squares algorithm)
Important note: Due to the bug fixed by this version, v0.13.0 was yanked soon after 0.13.1 was released.
BREAKING: Change the signature of ContourBuilder::new
to take a usize
instead of an u32
for the dimensions of the grid.
This is more idiomatic and consistent with the rest of the Rust ecosystem and enables the use of larger grids
(thanks to @netthier, see #12 and #13 for details).
Fix artifacts in the contours obtained when using the f32
feature and large grids (thanks to @netthier, see #12 and #13 for details).
Important note: Due to a bug, v0.13.0 was yanked after 0.13.1 (correcting the bug concerned) was released.
area
function (fixes #11, thanks to @caspark). Note that given the use made of this function, it probably didn't cause issues with the contours created.f32
feature to use f32
instead of f64
for the input values and the computations (thanks to @hakolao).Allow to compute isobands as MultiPolygon
using the isobands
method of the ContourBuilder
struct.
Refactor some stuff (notably better dispatching of the code across files).
Add support for building isolines as MultiLineString
s (instead of solely building contour polygons as MultiPolygons).
Improve some minor details in the documentation and in the README (notably to refer to the contour-isobands crate)
Be less restrictive about the geo-types version and use geo_types::Coord instead of deprecated geo_types::Coordinate.
Update to Rust 2021 edition.
Update authors
field in Cargo file.
BREAKING: Make geojson optional, use geo-types for geometry representation (thanks to @michaelkirk, see #5 and #6 for details).
BREAKING: Rename the "value" field to "threshold" in the GeoJSON representation.
Add x_origin
, y_origin
, x_step
and y_step
attributes to ContourBuilder struct. They can be set using the builder pattern, before calling the contours
method.
Create a changelog and complete it retroactively.