Skip to content

danhhz/s2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

S2

Build Status

This is a library for manipulating geometric shapes. Unlike many geometry libraries, S2 is primarily designed to work with spherical geometry, i.e., shapes drawn on a sphere rather than on a planar 2D map. (In fact, the name S2 is derived from the mathematical notation for the unit sphere.) This makes it especially suitable for working with geographic data.

Status of the Rust Library

This library is principally a port of the C++ S2 library, adapting to Rust idioms where it makes sense. We detail the progress of this port below relative to that C++ library.

ℝ¹ - One-dimensional Cartesian coordinates

Not started.

ℝ² - Two-dimensional Cartesian coordinates

Not started.

ℝ³ - Three-dimensional Cartesian coordinates

Partial implemention of R3Vector.

- Circular Geometry

Not started.

- Spherical Geometry

Partial implementations of:

  • S2CellId
  • S2LatLng
  • S2Point

TODO

  • in-memory representation of S2CellId as a struct/enum/etc
  • audit which methods are public
  • reconsider the s2::S2LatLng naming studder
  • implement the same operator overloads as the c++ library
  • consider using the c++ library as a reference impl in tests (via ffi)

About

S2 spherical geometry library in Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages