a5-js
TypeScript icon, indicating that this package has built-in type declarations

0.0.3 • Public • Published

A5 - Global, equal-area, millimeter-accurate geospatial index

Website: A5Geo.org

Introduction

A5 is a geospatial index that partitions the world into pentagonal cells. The cells are available at 32 different resolution levels, with the largest cell covering the whole world, and the smallest less than 30mm². Within each resolution level the cells have equal area, to within 2%.

A5 cells provide simple way to represent spatial data as a collection of cells, which together represent regions on the globe. These can be anything, from city districts to parcels of land. Once data is in a cell-based format, it becomes much simpler to perform analysis such as calculating the correlation between different variables - for example elevation and crop yield.

Cells can also be used to group (aggregate) point data, to understand how it spatially distributed. For example, the density of holiday rentals across a city.

To understand how it works, take a look at the Examples.

A5 is implemented in TypeScript and is available as a library, with API documentation here. It is open source and licensed under the Apache 2.0 License.

Benefits over alternative systems

Like other DGGSs, A5 can be used for indexing, spatial joins, and other spatial operations. The appropriate choice of DGGS will depend on the use case, the key strengths of A5 over other similar indexing systems are:

  • Uniform cell sizes group spatial features without introducing bias due to unequal cell sizes.
  • Very high resolution of 30mm² at final resolution level, encoded as a 64-bit integer.
  • Minimal distortion of cell areas across the globe.

Geometric Construction

DGGSs are generally based on a planar cell tiling which is applied to the sides of a platonic solid, before being projected onto a sphere.

A5 is unique in that it uses a pentagonal tiling of a dodecahedron. The pentagon chosen for the tiling is equilateral, but not regular - unlike other common DGGSs which use regular polygons, for example HTM uses triangles, S2 uses squares, and H3 uses hexagons.

The benefit of choosing a dodecahedron is that it is the platonic solid with the lowest vertex curvature, and by this measure it is the most spherical of all the platonic solids. This is key for minimizing cell distortion as the process of projecting a platonic solid onto a sphere involves warping the cell geometry to force the vertex curvature to approach zero. Thus, the lower the original vertex curvature, the less distortion will be introduced by the projection.

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
0.0.357latest

Version History

VersionDownloads (Last 7 Days)Published
0.0.357
0.0.215
0.0.19

Package Sidebar

Install

npm i a5-js

Weekly Downloads

81

Version

0.0.3

License

Apache-2.0

Unpacked Size

69.8 kB

Total Files

21

Last publish

Collaborators

  • felixpalmer