s2geometry
s2
Our great sponsors
s2geometry | s2 | |
---|---|---|
26 | 1 | |
2,181 | 120 | |
2.5% | 3.3% | |
5.8 | 3.1 | |
26 days ago | 10 months ago | |
C++ | C++ | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
s2geometry
-
Hexagons and Hilbert Curves – The Horrors of Distributed Spatial Indices
I experimented with geospatial Hilbert Curves as a Postgres extension [0] for PostGIS using the S2 [1] spherical geometry library. S2 uses a scale free cell coverage pattern that is numbered using six interlocking space filling Hilbert Curves [2].
By having both high level (cell) and low level (cell id) geometries it was a very powerful library which allowed projection from the hilbert space into a Postgres spatial index (spgist) including various trees, like noted in this article. It appears to be still quite active in development.
[0] https://github.com/michelp/pgs2
[1] https://s2geometry.io/
[2] https://s2geometry.io/devguide/s2cell_hierarchy
- Show HN: TG – Fast geometry library in C
- Unum: Vector Search engine in a single file
-
Understanding Geohashes
If you check the h3geo comparison page, you should see plenty of alternatives to geohash, such as s2 or even h3 itself.
- Evaluation of Location Encoding Systems
-
Inscribed angle theorem in 3D/higher dimension
See some discussion I started at https://github.com/google/s2geometry/issues/190
-
An Interactive Explanation of Quadtrees
> It was quite hard for me to find open-source implementations of linear quadtrees.
You probably know this, but the S2 library has one: https://github.com/google/s2geometry
-
Why doesn’t my pokèstop show up?
https://s2geometry.io shows how this works
-
Needing advice to improve geodesic calculation time
If your points are distributed globally, however, I'd suggest using something like s2geometry (calculates over a sphere instead of an ellipsoid which is much faster + already has something called S2ClosestPointQuery).
-
What is the best data structure for this problem?
Some alternative solutions are S2 from Google and H3 from Uber. These don't have the same issues as geohash because they work on a 3-d model of the geoid and not a 2-d cylindrical projection like Geohash.
s2
-
S2: Computational geometry and spatial indexing on the sphere
We use S2 extensively in our infrastructure, and open-sourced our Node.js TypeScript bindings for Google's reference C++ lib: https://github.com/radarlabs/s2. (More context about how any why here: https://radar.com/blog/open-source-node-js-typescript-s2-lib...)
What are some alternatives?
h3 - Hexagonal hierarchical geospatial indexing system
tensorflow - An Open Source Machine Learning Framework for Everyone
S2 geometry - S2 geometry library in Go
0.30000000000000004 - Floating Point Math Examples
Kyrix - Interactive details-on-demand data visualizations at scale
sled - the champagne of beta embedded databases
protoc-gen-star - protoc plugin library for efficient proto-based code generation
open-location-code - Open Location Code is a library to generate short codes, called "plus codes", that can be used as digital addresses where street addresses don't exist.
BTrDB - Berkeley Tree Database (BTrDB) server
ld - Lean Database
ogc-grpc - Proto api and proxy server for ogc / inspire compliant API
WSL - Issues found on WSL