Skip to content

Releases: gcol33/hexify

v0.7.1: Code quality and documentation

10 Mar 07:44

Choose a tag to compare

Improvements

  • Refactored rcpp_aperture.cpp: parameterized helpers eliminate copy-paste across apertures
  • Consolidated input validation: shared validate_aperture() / validate_resolution()
  • Optimized is_pentagon(): direct quad coordinate lookup instead of lon/lat loop
  • Stricter aperture parsing in hexify() with informative error
  • Deduplicated theme_minimal() calls with .theme_clean() helper

Documentation

  • Added "Why Hexagonal Grids?" section to README
  • Added "Known Limitations" section to README

Tests

  • New test-edge-cases.R with 32 tests: poles, antimeridian, dateline, roundtrip stability, pentagon invariants, neighbor symmetry

Full Changelog: v0.7.0...v0.7.1

v0.7.0: Fix ap7 encoding + neighbors + summarize

01 Mar 19:13

Choose a tag to compare

Hotfix

  • Fixed aperture 7 cell encoding to use Class III substrate quantization.
  • Updated max_cell_id() for aperture 7 bounding box.

New features

  • get_neighbors() — k-ring neighbor lookup for all ISEA apertures + H3. Supports k > 1, distance output, vectorized input.
  • hex_summarize() — cell-level aggregation with tidyeval. Groups by cell_id, returns centers/areas/counts.

Check results

0 errors, 0 warnings, 0 notes — all CI platforms passing.

hexify-0.6.5

28 Feb 21:51

Choose a tag to compare

Full Changelog: v0.6.4...v0.6.5

v0.6.4

28 Feb 21:28

Choose a tag to compare

Fix CRAN incoming check failures from v0.6.3 submission:

  • Removed compiled object files (.o) from source tarball (caused installation ERROR on Debian)
  • Wrapped plot_globe() examples in \donttest{} (was 608s on win-builder)
  • Reworded vendored to included in DESCRIPTION (spelling flag)
  • Strip debug symbols in Makevars to reduce installed library size

All v0.6.3 changes carried forward (antimeridian fix, globe projection fix, snprintf fix).

hexify 0.6.3

28 Feb 19:22

Choose a tag to compare

Antimeridian fix and auto-wrap dateline. See NEWS.md for details.

hexify 0.6.2

28 Feb 12:28

Choose a tag to compare

Native H3 backend with zero external dependencies.

  • Vendored H3 v4.4.1 C source, replacing the h3o R package dependency
  • H3 is now always available — no optional install, no Suggests
  • Uses H3 experimental polygon fill for full spatial coverage in hexify()
  • New native C++ bindings for all H3 operations

hexify 0.6.1

27 Feb 23:31

Choose a tag to compare

hexify 0.6.1

Polish H3 integration docs and UX:

  • Warn when aperture is passed with type = "h3" (ignored parameter)
  • Expanded H3 resolution guidance in hex_grid() documentation
  • Extended H3 vignette resolution table to full range (0-15)
  • Added h3_crosswalk() example to H3 vignette

v0.6.0: ISEA-H3 crosswalk and per-cell area

27 Feb 22:09

Choose a tag to compare

What's New

ISEA–H3 crosswalk and per-cell area

  • New h3_crosswalk(): bidirectional mapping between ISEA and H3 cell IDs, with automatic resolution matching and per-cell area comparison
  • New cell_area(): returns geodesic area (km²) for each cell — constant for ISEA (equal-area), location-dependent for H3, with session-scoped caching
  • HexData $cell_area_km2, [["cell_area_km2"]], and as.data.frame() now return per-cell areas for H3 grids instead of the grid-wide average
  • One-time session message when creating H3 grids to inform users that H3 cells are not exactly equal-area

Install

# From GitHub
remotes::install_github("gcol33/hexify@v0.6.0")

Full Changelog: v0.5.0...v0.6.0

hexify 0.5.0

27 Feb 16:15

Choose a tag to compare

H3 grid support

  • Added H3 (Uber) as a first-class grid type: hex_grid(resolution = 8, type = "h3")
  • All core functions work with H3 grids: hexify(), cell_to_sf(), grid_rect(), grid_global(), grid_clip(), get_parent(), get_children()
  • H3 support requires the h3o package (Suggests, not required for ISEA workflows)
  • New hexify_compare_resolutions(type = "h3") for H3 resolution table
  • dgearthstat() now accepts HexGridInfo objects directly
  • New grid_type slot on HexGridInfo: "isea" (default) or "h3"
  • HexData cell_id slot supports character (H3) and numeric (ISEA) cell IDs
  • Backward compatible: all existing ISEA workflows unchanged

v0.3.7

21 Jan 15:41

Choose a tag to compare

Changes

  • Removed slow spatial operation tests (grid_global, grid_rect, grid_clip)
  • Reduced comprehensive roundtrip test combinations
  • Test runtime now ~13 seconds (previously exceeded 10 min limit)

CRAN

This release addresses the test runtime issue from v0.3.6.