7 stable releases
1.0.6 | Jan 29, 2022 |
---|---|
1.0.5 | Jan 27, 2022 |
1.0.4 | Jan 26, 2022 |
1.0.1 | Jan 25, 2022 |
1.0.0 | Jan 24, 2022 |
#17 in #tide
24 downloads per month
23KB
255 lines
vincenty-rs
Overview
Expose API endpoint for calculating distance using vincenty formulae.
Notably, it allows you to input src
and dst
as query parameters, where either can be a permutation of:
An instance of this API with front-end written in yew is available at vincenty.vihu.dev
Check the examples for more usage information.
Usage
Start the tide server with cargo run --release
API Example
- With lat,lng as
src
anddst
:
$ http GET http://localhost:5000/distance\?src\="42.3541165,-71.0693514"\&dst\="40.7791472, -73.9680804" --body
{
"data": {
"distance": 298.396186,
"dst": {
"lat": 40.7791472,
"lng": -73.9680804
},
"src": {
"lat": 42.3541165,
"lng": -71.0693514
}
}
}
- With h3 string indices as
src
anddst
:
$ http GET http://localhost:5000/distance\?src\="8c2a306638701ff"\&dst\="8c2a100894435ff" --body
{
"data": {
"distance": 298.394459,
"dst": {
"lat": 40.7791617074961,
"lng": -73.96812482164383
},
"src": {
"lat": 42.35408591768187,
"lng": -71.06937831049969
}
}
}
- With h3
u64
indices assrc
anddst
:
$ http GET http://localhost:5000/distance\?src\=631246145620214271\&dst\=631243921460311551 --body
{
"data": {
"distance": 298.394459,
"dst": {
"lat": 40.7791617074961,
"lng": -73.96812482164383
},
"src": {
"lat": 42.35408591768187,
"lng": -71.06937831049969
}
}
}
- With a mix of h3 string and h3
u64
:
$ http GET http://localhost:5000/distance\?src\="8c2a306638701ff"\&dst\=631243921460311551 --body
{
"data": {
"distance": 298.394459,
"dst": {
"lat": 40.7791617074961,
"lng": -73.96812482164383
},
"src": {
"lat": 42.35408591768187,
"lng": -71.06937831049969
}
}
}
- With a mix of h3
u64
and lat,lng:
$ http GET http://localhost:5000/distance\?src\="42.3541165,-71.0693514"\&dst\=631243921460311551 --body
{
"data": {
"distance": 298.398222,
"dst": {
"lat": 40.7791617074961,
"lng": -73.96812482164383
},
"src": {
"lat": 42.3541165,
"lng": -71.0693514
}
}
}
Dependencies
~19–32MB
~516K SLoC