The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

hilbert

CRAN status Codecov test coverage R-CMD-check MIT License

hilbert provides utilities for quick indexing/encoding of coordinates to a Hilbert Curve.

Installation

You can install hilbert via either remotes or pak:

# pak
pak::pkg_install("program--/hilbert")

# remotes
remotes::install_github("program--/hilbert")

Example

Setting Up

x <- -77.85641
y <- 34.35935
n <- 24 # n > 15 requires `bit64`
e <- c(xmax = 180, xmin = -180, ymax = 90, ymin = -90)

Coordinates to Position

pos <- hilbert::coords_to_position(x, y, n = n, extent = e)
pos
#>         x        y
#> 1 4760236 11591131

Position to Index

index <- hilbert::index(pos, coords = c("x", "y"), n = n, attach = TRUE)
index
#>         x        y               h
#> 1 4760236 11591131 129470580596149

Index to Position

new_pos <- hilbert::position(index, idx = "h", n = n, attach = FALSE)
new_pos
#>         x        y
#> 1 4760236 11591131

Position to Coordinates

new_xy <- hilbert::position_to_coords(new_pos, coords = c("x", "y"), extent = e, n = n, attach = TRUE)
new_xy
#>           x        y
#> 1 -77.85641 34.35935

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.