This project adheres to Semantic Versioning.
Possible sections are:
Added
for new features.Changed
for changes in existing functionality.Deprecated
for soon-to-be removed features.Removed
for now removed features.Fixed
for any bug fixes.Security
in case of vulnerabilities.
h3o::geom::Solvent
to compute the shape of a set of H3 cells.- opt-in duplicate detection
- can works with heterogeneous set of cells
CellIndex::compact
now works in-place instead of using iterators.
h3o::geom::dissolve
is removed.- you can use
SolventBuilder::new().build().dissolve(cells)
instead.
- you can use
- Fix a bug in the
Tiler
when dealing with transmeridian cells.
h3o::geom::Plotter
to compute the cells along lines.h3o::geom::Tiler
to compute the cell coverage of plane figures.
- small performance enhancement for aarch64, should not affect other platforms
- error types now derive
Error
, even in no-std mode.
- remove the geometry types wrapper (you can now use
geo
types directly). - remove the
ToCells
trait, now you can use:h3o::LatLng
forPoint
&MultiPoint
.h3o::geom::Plotter
forLine
,LineString
andMultiLineString
.h3o::geom::Tiler
forPolygon
,MultiPolygon
,Rect
andTriangle
.
Geometry
andGeometryCollection
are not directly supported- remove the support for
geoJSON
. - remove the
ToGeo
trait, now you can use:From
trait forCellIndex
,DirectedEdgeIndex
andVertexIndex
- fix
to_geom
when dealing with shapes crossing the prime meridian.
- fix
to_cells
when dealing with transmeridian cells
- bump dependencies
- fix a bug in the antimeridian heuristic of
to_cells
- remove public constants VERSION_MAJOR, VERSION_MINOR and VERSION_PATCH
- add
no_std
support (std
is still enabled by default though) - add
typed_floats
support (disabled by default)
- fix
to_cells
when dealing with transmeridian cells
- new containment mode,
Covers
, to handle small geometries within a cell. - clarification on the
IntersectsBoundary
mode.
LocalIJ::anchor
,LocalIJ::i
andLocalIJ::j
no longer exists (fields are public now).
CoordIJ
is now publicLocalIJ::new_unchecked
is replaced byLocalIJ::new
to_cells
andmax_cells_count
now takes aPolyfillConfig
as input.from_radians
constructors for geometry now take ownership of the input.
- update precomputed average edge lengths (they were underestimated).
- HUGE improvements, both in term of speed and memory usage, for
Polygon::to_cells
. - HUGE improvements, in term of memory usage, for
to_geom
on cells.
- fix
Point
toLatLng
conversion
- compilation issue on Rust 1.71+ due to an outdated version of
geo
- fix the
to_geom
implementation
CellIndex::succ
CellIndex::pred
CellIndex::first
CellIndex::last
Debug
impl forLatLng
now prints both radians and degrees.
- fix
LatLng
ordering - fix compilation to WASM by using compile-time RNG for ahash
Resolution::area_rads2
Resolution::edge_length_rads
CellIndex::child_position
CellIndex::child_at
- geometry functions relies on radians only, making the planet-independant
LatLng::from_radians
(replace the oldLatLng::new
)LatLng::lat_radians
(replace the oldLatLng::lat
)LatLng::lng_radians
(replace the oldLatLng::lng
)
- Conversion from/to
geo
types now assumes degrees (instead of radians) LatLng::new
now expects degrees as input.LatLng::lat
andLatLng::lng
now return degrees.
LatLng::from_degrees
(use the newLatLng::new
instead)LatLng::lat_degrees
(use the newLatLng::lat
instead)LatLng::lng_degrees
(use the newLatLng::lng
instead)
- fix link to CHANGELOG in CONTRIBUTING
- fix various typos
- escape backslash in README
- fix LocalIJ doc
- initial release, full coverage of the H3 API